如何修复"警告:忽略带有破碎名称的引用"在git?

时间:2016-01-25 10:48:31

标签: git

我正在使用OSX。在特定的仓库中,每当我键入git命令后选中自动填充:

$ git diff [clicks tab...]

我现在看到了大量的警告:

warning: ignoring ref with broken name refs/Icon
warning: ignoring ref with broken name refs/heads/Icon
warning: ignoring ref with broken name refs/remotes/Icon
warning: ignoring ref with broken name refs/remotes/origin/Icon
warning: ignoring ref with broken name refs/tags/Icon

这真的很烦人,这意味着我无法看到我想看到的文件名。

如何删除或取消这些警告?

我的Icon?文件中有gitignore条目。本地目录中有一个Icon?文件。

对于所有触发快乐的人即将点击"重复":我已经搜索了其他答案,我found this但我不确定它与我的情况。可能是潜在的原因是相同的,但是如果能解释如何解决这个问题,我和其他人会受益。

1 个答案:

答案 0 :(得分:7)

Icon\r文件由Mac OS在您change a folder's icon时创建。

  

如何删除或取消这些警告?

您需要自行删除违规文件。

  

我有一个Icon的条目?在我的gitignore文件中。

这没什么区别。 .gitignore适用于工作目录;这些文件位于存储库文件夹中,Git存储其元数据。 .gitignore不适用于那里。 Git将它们误认为是分支名称。

要解决此问题,您可以删除您为文件夹提供的自定义图标。但如果没有,则需要从.git文件夹下删除文件。您可以在Finder中(在打开“显示隐藏文件”之后)或从命令行执行此操作:

rm .git/refs/Icon?

确保在尝试此之前备份您的存储库,因为更改.git文件夹中的内容可能会损坏您的存储库。