setup_work_tree: adjust relative $GIT_WORK_TREE after moving cwd
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>
Mon, 27 Dec 2010 01:26:04 +0000 (08:26 +0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 27 Dec 2010 16:34:19 +0000 (08:34 -0800)
commit0ed748134748579a13cf27e1e8b3e55371bcd9dc
tree3f39dda690dc82e361b0e33df3bf59512d2bd3f3
parente7d1efbe9dc5c03e65a573d6f8c4d8804118eb0a
setup_work_tree: adjust relative $GIT_WORK_TREE after moving cwd

When setup_work_tree() is called, it moves cwd to $GIT_WORK_TREE and
makes internal copy of $GIT_WORK_TREE absolute. The environt variable,
if set by user, remains unchanged. If the variable is relative, it is
no longer correct because its base dir has changed.

Instead of making $GIT_WORK_TREE absolute too, we just say "." and let
subsequent git processes handle it.

Reported-by: Michel Briand <michelbriand@free.fr>
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
.gitignore
Makefile
setup.c
t/t1501-worktree.sh
test-subprocess.c [new file with mode: 0644]