问题
I have a normal repo where there is a working tree and a .git folder in the same directory as the working tree.
I'm trying to run a git command from outside this location with the command
git --git-dir=/path/to/repo/.git --work-tree=/path/to/repo pull /some/other/repo master
but I keep getting the error fatal: /usr/libexec/git-core/git-pull cannot be used without a working tree.
.
What am I doing wrong?
回答1:
This is a bug in earlier versions of Git. This problem should go away once you upgrade to 1.7.7.2 or later.
From the commit that fixed the bug:
You can't currently run git-pull or git-rebase from outside
of the work tree, even with GIT_WORK_TREE set, due to an
overeager require_work_tree function. Commit e2eb527
documents this problem and provides the infrastructure for a
fix, but left it to later commits to audit and update
individual scripts.
See also commit e2eb527.
来源:https://stackoverflow.com/questions/9745941/how-do-i-use-the-work-tree-option-with-git-i-keep-getting-an-error