从远程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

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


当前回答

我也有一个类似的问题,完全把我搞糊涂了。我有一个名为test的本地分支,并试图获取和签出名为test/some-changes的远程分支。

Fix只是删除一个陈旧的测试分支,然后我可以获取并签出远程分支。

其他回答

情况1:检查git-server上的分支是否重复。

Example: two branches below are duplicated:

    - upper_with_lower
    - UPPER_with_lower

---> Let consider removing one of them.

情况2:您正在推送的分支与其他分支重复。

对我有用的是:

删除. /日志/文献/遥控器/产地/分支 删除. / refs /遥控器/产地/分支 运行git gc——prune=now

更多关于git gc命令的信息请访问:https://git-scm.com/docs/git-gc

我通过以下方法解决了这个问题

git branch --unset-upstream
rm .git/refs/remotes/origin/{branch}
git gc --prune=now
git branch --set-upstream-to=origin/{branch} {branch}
#or git push --set-upstream origin {branch}
git pull

这假设你的本地和远程分支是对齐的,你只是得到的refs错误为非致命的。

在我的情况下,我不得不手动删除旧标签已被删除的远程。

我也有一个类似的问题,完全把我搞糊涂了。我有一个名为test的本地分支,并试图获取和签出名为test/some-changes的远程分支。

Fix只是删除一个陈旧的测试分支,然后我可以获取并签出远程分支。