我想使用Git存储库,但工作树应该是远程的。例如:如果我将我的项目存储在内部存储的~/project
和project.git
内部的~/git/project.git
。Git更改工作目录
我已经通过配置改变工作树:
worktree=/Users/myuser/project
而且我能够提交和查看差异,但是当我试图做git stash
,我得到了错误:
致命:/ usr/libexec/git-core/git-stash不能在没有工作树的情况下使用。
如何将.git
目录远离工作树? 为什么我得到这个错误?
git config --get core.worktree
返回正确的工作目录....
尝试'--git-dir'或设置环境VAR'GIT_DIR',请接受答案http://stackoverflow.com/questions/5283262/what-is-a-git-work-tree-why-have-i-never-needed-to-set-this-as-an-env-var-为什么 – devconsole
我见过答案,但我假设,如果我重写GIT_DIR它在短时间内使用少量库时会造成一些混乱。我找到了worktree配置选项,但没有关于工作目录...存储库也存在,我不能运行'git init --git-dir'。如何使用--git-dir?任何文件?它可以通过配置设置? – ValeriiVasin
通常情况下,git会在当前工作目录中查找.git目录。如果它不在那里,它会在父目录中查找等等,直到它到达根目录。在你的设置中它永远不会找到.git,因此它也不会找到.git/config。所以你必须指定.git目录的位置。也许你可以为不同的项目使用不同的别名? – devconsole