从远程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 checkout -b some_unknown_branch
然后我清除了所有其他分支(不活动),因为它们只是不必要的垃圾。
git branch | grep -v \* | grep -v master | xargs git branch -D
然后用我想要的名字重命名我的当前分支,比如:
git checkout -m my_desired_branch_name
我遇到了一个典型的Mac相关问题,用其他建议的答案无法解决。
Mac的默认文件系统设置是不区分大小写的。
在我的例子中,一个同事显然忘记了为分支创建一个大写字母。
testBranch /符合
vs。
testbranch / id 2
对于Mac文件系统(是的,它可以配置不同)这两个分支是相同的,在这种情况下,你只能得到两个文件夹中的一个。对于剩下的文件夹,您将得到一个错误。
在我的例子中,删除.git/logs/ref/remotes/origin中的有问题的子文件夹解决了问题,因为有问题的分支已经合并回来了。