我正在运行(在脚本中 - 试图避免使用cd):
git --git-dir=/test/.git --work-tree=/test/ pull
得到:
fatal: /usr/lib/git-core/git-pull cannot be used without a working tree.
请注意,我运行的其他命令恰好具有这种结构(特别是add,commit和pull),所以我认为这只是一个拉动问题。
这里记录了一个类似的问题:Git pull fails to parse syntax,但它并不完全相同 - 它们会得到一个不同的错误(它们在Windows上运行,所以谁知道......我在Ubuntu上)。
答案 0 :(得分:2)
感谢isbadawi的回答。
原来之前已经回答过这个问题:git pull while not in a git directory。
简而言之,这是一个git pull的错误。但是,由于pull基本上是获取和合并的别名,因此以下等同于pull(从上面的链接复制):
cd /X
git --git-dir=/X/Y/.git fetch
git --git-dir=/X/Y/.git --work-tree=/X/Y merge origin/master