summaryrefslogtreecommitdiff
path: root/path.c
diff options
context:
space:
mode:
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>2014-11-30 15:24:47 +0700
committerJunio C Hamano <gitster@pobox.com>2014-12-01 11:00:16 -0800
commit529fef20cf94dbd5c16f7a239ffc2b06f3cf8bb7 (patch)
tree732a63391953b43db6a149b585822e2bcd57f9f6 /path.c
parent91aacda85a91192a9f66a0f175d739f77971412f (diff)
downloadgit-529fef20cf94dbd5c16f7a239ffc2b06f3cf8bb7.tar.gz
checkout: support checking out into a new working directory
"git checkout --to" sets up a new working directory with a .git file pointing to $GIT_DIR/worktrees/<id>. It then executes "git checkout" again on the new worktree with the same arguments except "--to" is taken out. The second checkout execution, which is not contaminated with any info from the current repository, will actually check out and everything that normal "git checkout" does. Helped-by: Marc Branchaud <marcnarc@xiplink.com> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'path.c')
-rw-r--r--path.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/path.c b/path.c
index 94db5016c4..72eca6dfa5 100644
--- a/path.c
+++ b/path.c
@@ -92,7 +92,7 @@ static void replace_dir(struct strbuf *buf, int len, const char *newdir)
static const char *common_list[] = {
"/branches", "/hooks", "/info", "/logs", "/lost-found", "/modules",
- "/objects", "/refs", "/remotes", "/rr-cache", "/svn",
+ "/objects", "/refs", "/remotes", "/worktrees", "/rr-cache", "/svn",
"config", "gc.pid", "packed-refs", "shallow",
NULL
};