拉不工作 - Debian + gitolite上的TortoiseGIT / Windows 7 / GIT

时间:2012-04-20 20:52:33

标签: gitolite tortoisegit git-pull

我有一个奇怪的问题。我使用TortoiseGIT(Win7),我的存储库放在一个vritual服务器(Debian)上,我使用gitolite和SSH密钥。

我可以clone存储到我的电脑,我可以运行FetchPushCommitSync ......所有内容,但是在尝试时Pull来自其他贡献者的服务器Pushed的更改,出现以下错误:

git.exe pull -v --progress      "origin"
fatal: 'pull' appears to be a git command, but we were not
able to execute it. Maybe git-pull is broken?
git did not exit cleanly (exit code 128)

我不明白,为什么只有pull命令无效...感谢您的帮助。

我可以使用提供的更改来修复存储库..但不能Pull在我的PC上创建存储库的更改。

4 个答案:

答案 0 :(得分:13)

我在将git Bash可执行文件sh.exe更改为始终以管理员身份运行后遇到了同样的问题(以解决另一个问题)。然后它让git在某些情况下无法访问它并导致各种“也许git- *被破坏了?”错误。也许这可能对某人有所帮助......

答案 1 :(得分:2)

卸载旧Git并重新安装最新版本为我解决了这个问题。

这是安装程序的链接 Link to get installers

我的确切错误消息是

C:\Program Files (x86)\Git/libexec/git-core\git-pull: line 304: exec: git-merge: not found
fatal: 'pull' appears to be a git command, but we were not
able to execute it. Maybe git-pull is broken?

答案 2 :(得分:1)

错误消息与Git非常相关,来自help.c

static const char bad_interpreter_advice[] =
  N_("'%s' appears to be a git command, but we were not\n"
  "able to execute it. Maybe git-%s is broken?");

这类似于issue 40(另一个GUI,这里是terminal-ide)。

在这种情况下,这是由于远程Git安装,不完整

Comments 3 of issue 19

  

安装中也缺少git-merge,可以用

修复
$> ln -s git git-merge
  system/bin/

中的

在你的情况下,分辨率可能不是完全相同,但它可能与错误的Git安装有关。

答案 3 :(得分:0)

我看到你能够运行" git fetch"。如果你也可以运行" git merge&#34 ;,运行序列" git fetch"然后是" git merge"将完成与#34; git pull"相同的事情。

来源: http://git-scm.com/docs/git-pull