8

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

我可以clone将存储库存储到我的 PC,我可以运行Fetch, Push, Commit, Sync.. 一切,但是当其他贡献者尝试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

4 回答 4

13

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

于 2013-07-23T14:30:29.003 回答
2

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

这是安装程序的 链接 获取安装程序的链接

我的确切错误信息是

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?
于 2013-01-08T17:41:01.130 回答
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安装不完整

第 19 期评论 3

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

$> ln -s git git-merge

system/bin/

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

于 2012-04-20T21:51:57.837 回答
0

我看到您可以运行“git fetch”。如果您还可以运行“git merge”,则运行“git fetch”后跟“git merge”的顺序将完成与“git pull”相同的事情。

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

于 2014-07-22T19:22:37.560 回答