setup.c: support multi-checkout repo setup
The repo setup procedure is updated to detect $GIT_DIR/commondir and set $GIT_COMMON_DIR properly. The core.worktree is ignored when $GIT_COMMON_DIR is set. This is because the config file is shared in multi-checkout setup, but checkout directories _are_ different. Making core.worktree effective in all checkouts mean it's back to a single checkout. Helped-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
e61a509a49
commit
31e26ebcb5
@ -762,6 +762,10 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix)
|
||||
free(cwd);
|
||||
continue;
|
||||
}
|
||||
if (!strcmp(arg, "--git-common-dir")) {
|
||||
puts(get_git_common_dir());
|
||||
continue;
|
||||
}
|
||||
if (!strcmp(arg, "--resolve-git-dir")) {
|
||||
const char *gitdir = argv[++i];
|
||||
if (!gitdir)
|
||||
|
Reference in New Issue
Block a user