从远程git存储库克隆后(在bettercodes) 我做了一些改变,承诺 并试图推动:

git push origin master

错误:

错误:不能锁定现有的信息/引用 致命:git-http-push失败

本案例涉及已经存在的存储库。

我之前做的是:

Git配置-global http。sslVerify假 git init Git远程添加[url] git克隆 更改数据 git提交

在'bettercodes'我没有访问git日志。

我用的是Windows。 具体的错误是:

C:\MyWorkStuff\Projects\Ruby\MyProject\>git push origin master
Unable to create branch path https://user:password@git.bettercodes.org/myproject/info/
error: cannot lock existing info/refs
fatal: git-http-push failed

我之前克隆过,然后修改代码并提交。


当前回答

对我来说,删除。git/info/ref会让事情变得更好。当git没有运行时,不应该有一个引用文件。但在我的情况下,不管出于什么原因,有一个人导致了问题。

删除文件不会删除任何本地提交或分支。

其他回答

在拉之前,你需要清理你的局部变化。下面的命令帮助我解决。

git remote prune origin

之后

git pull origin develop

希望这能有所帮助!

在git pull之前运行git fetch。这样问题就解决了。

对我来说,删除。git/info/ref会让事情变得更好。当git没有运行时,不应该有一个引用文件。但在我的情况下,不管出于什么原因,有一个人导致了问题。

删除文件不会删除任何本地提交或分支。

这听起来像是一个权限问题——有没有可能你打开了两个窗口,使用不同的权限执行?也许可以检查.git文件夹的所有权。

也许检查是否有未完成的文件锁打开,也许使用lsof检查,或者对您的操作系统使用相同的方法。

检查你(git进程)是否可以访问文件.git/info/refs,并且这个文件没有被其他进程锁定。