我正在使用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`
我该如何解决这个问题?感谢。
答案 0 :(得分:178)
备份你的仓库,因为这些命令是不可逆转的。
首先,转到您的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
答案 1 :(得分:42)
冲突的文件可能在多个地方,我会查看:
.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
)任何可疑分支。
答案 2 :(得分:8)
当我的同事在Dropbox更新之前推送他的更改并关闭PC时,我们的团队也会遇到这种情况。
我这么简单地解决了。
刚刚删除了冲突的副本。 (XXXX的冲突副本yyyy-mm-dd)
然后正常拉动。
请注意,我的同事在搞砸之前已经做了更改。他再次推动他的改变。这次没有关机。 :)
答案 3 :(得分:7)
我能够从.git文件夹中删除所有冲突的文件,但我继续收到有关不再存在的文件的错误。
对我的修复是打开.git/refs/packed_refs
并删除包含“冲突”文字的行。
答案 4 :(得分:1)
对我来说这是错误的:
的 fatal: Reference has invalid format: 'refs/tags/r0.2:3'
强>
您可以转到 / .git / packed_refs 文件并删除refs/tags/r0.2:3
然后它开始工作了。但为什么它发生在我不知道的第一个地方。
答案 5 :(得分:0)
首先尝试使用git checkout master
来获得健康,命名良好的分支。
答案 6 :(得分:0)
我得到同样的错误
致命:参考文件格式无效:' refs / heads / somebranch(1)'
用于以下命令
git branch
然后,我使用命令
搜索错误的名称(分支名称后跟(1))find . -name 'somebranch (1)'
它显示了以下结果
./。git / refs / heads / somebranch(1)
somebranch IMO的某些重复版本。所以,我通过执行删除
之后的find命令删除了它find . -name 'somebranch (1)' -print -exec rm -rf {} \;
然后分支命令成功运行
git branch
答案 7 :(得分:0)
我遇到了类似的错误,例如
<!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>
只需删除远程Dropbox存储库中的文件fatal: Reference has invalid format: 'refs/heads/user-search-api (Sithu's conflicted copy 2016-01-08)'
即可解决问题。