2016-09-18 71 views
0

由于种种原因,我想创建一个自定义的目录名称,而不是.git本地存储库,我用全局选项--git-dir--work-tree(见https://git-scm.com/docs/git)也配置与ENV瓦尔:具体的git-dir目录不应该被列为“未跟踪”

export GIT_DIR=".customgitdir" 
export GIT_WORK_TREE="." 

然后,我创建的回购协议:

$ git init 
Initialized empty Git repository in XXXXXXXXX/.customgitdir/ 

然后我跑git status

$ git status 
On branch master 

Initial commit 

Untracked files: 
    (use "git add <file>..." to include in what will be committed) 

    .customgitdir/ 

nothing added to commit but untracked files present (use "git add" to track) 

您可以看到本地回购目录列为“未跟踪文件”,这在以后使用git add .时会出现问题。

使用默认目录.git时,它在逻辑上不会出现在git status命令的输出中。为什么它与自定义目录名称不一样?

+1

无论'$ GIT_DIR'如何,跳过'.git'都被硬编码到源代码中。没有内置代码来跳过'$ GIT_DIR',只是'.git'。 – torek

回答