无法进行Git克隆,但可以对已克隆的repo执行Git拉/推操作

无法进行Git克隆,但可以对已克隆的repo执行Git拉/推操作,git,clone,Git,Clone,我有一个远程Git存储库,我从中克隆并能够拉/推到该存储库。但最近,当我试图将同一存储库重新克隆到另一个目录时,它不起作用 $ git clone -v 'http://user@server.com/git/project.git' project Initialized empty Git repository in f:/temp/project/.git/ Password: error: cannot spawn git: No such file or directory

我有一个远程Git存储库,我从中克隆并能够拉/推到该存储库。但最近,当我试图将同一存储库重新克隆到另一个目录时,它不起作用

$ git clone -v 'http://user@server.com/git/project.git' project  
Initialized empty Git repository in f:/temp/project/.git/  
Password:  
error: cannot spawn git: No such file or directory
我仍然可以在我已经克隆的存储库上执行git拉入和推入操作


我试着用眼睛看这个错误,但没有多大帮助。有人能告诉我如何调试这种错误吗

git
无法启动获取HTTP存储库所需的子命令。它可能是
/usr/lib/git-core/git-httpfetch
——如果丢失了,请重新安装git


如果在Linux上,请使用
strace
验证要执行的
git
程序

strace -o /tmp/git.log git clone http://.../

grep "^exec" /tmp/git.log | grep "ENOENT"

不管出于什么原因,http都不起作用。这可能是git http服务器(如果它影响多个客户端)或git安装(如果所有这些客户端都使用相同版本的git)的问题


您现有的存储库正在使用ssh,这是
git remote-v
告诉您的。所以你可以继续使用它<代码>git克隆user@server.com/git/project.git应该可以工作。

如果存储库中的标记太多,也会发生这种情况 (在我们的案例中,Jenkins自动创建了一千多个)

问题是:有必要保留这么多标签吗?
如果不删除其中的一些

那么之后是否还有其他输出?git remote-v对于回购协议,您仍然可以推/拉?@David之后没有更多输出that@Raisen是的,git位于我可以从同一命令执行其他git命令的路径中line@Schwern原点(提取)原点(推送)我不确定这是否是本地git安装的问题。当我试图从另一台安装了新git的机器上克隆它时,我会遇到同样的错误。我还可以在远程存储库的同一目录中克隆其他存储库。以下是有关该问题以及如何重现该问题的更多信息: