我正在使用Dropbox
同步git
存储库,但现在当我尝试使用push
时,我得到了一个错误:
fatal: Reference has invalid format: 'refs/heads/master (MacBook-Pro's conflicted copy 2012-10-07)'
因此,Dropbox似乎检测到了一个冲突并创建了一个副本。好的,没问题,所以我删除了冲突的文件。尽管如此,还是得到了上面的git错误。
$ git checkout master
M index.html
Already on 'master'
$ git add .
$ git commit -a -m "Cleanup repo"
[master ff6f817] Cleanup repo
1 file changed, 5 insertions(+), 5 deletions(-)
$ git push
fatal: Reference has invalid format: 'refs/heads/master (MacBook-Pro's conflicted copy 2012-10-07)'
The remote end hung up unexpectedly`
我该如何解决这个问题呢?谢谢。
发布于 2013-05-07 01:24:52
如果您对此不确定,请备份您的存储库,因为这些命令是不可逆的。
首先,转到您的repo目录。
cd myrepo
然后递归地搜索冲突的文件并将其删除
find . -type f -name "* conflicted copy*" -exec rm -f {} \;
最后,从git的packed-refs文件中删除任何“冲突”的引用
awk '!/conflicted/' .git/packed-refs > temp && mv temp .git/packed-refs
发布于 2012-10-08 07:03:43
冲突的文件可能在多个位置,我将查看:
.git/logs/refs/remotes/origin/
.git/logs/refs/heads/
.git/refs/remotes/origin/
.git/refs/heads/
或者,您可以查看.git
子目录中的所有内容:find . -name '*conflicted*'
否则,使用git branch -a
列出活动分支并删除(git branch -d
)任何可疑的分支。
发布于 2014-01-29 15:36:06
当我的同事在Dropbox更新之前推送他的更改并关闭PC时,我们的团队也会发生这种情况。
我把它解决得很简单。
刚删除了冲突的副本。(XXXX冲突副本yyyy-mm-dd)
然后正常地拉它。
请注意,我的同事在搞砸之前就做了这些更改。他又一次推动了他的改变。这一次没有关机。:)
https://stackoverflow.com/questions/12773488
复制相似问题