警告:忽略名称为refs / stash 2的ref

问题描述 投票:1回答:2

我看到有其他问题涉及这个主题,但它似乎也很敏感。我不想删除任何数据,所以我想确保以正确的方式解决这个问题。当我尝试使用git自动完成任何操作时,我收到此错误。

ERROR:

warning: ignoring ref with broken name refs/stash 2

有谁知道这里出了什么问题以及如何解决它?谢谢!

git
2个回答
1
投票

我不清楚的是创建这些不正确/损坏的引用名称的原因。

要修复它,您可以删除它们:

git update-ref -d 'refs/stash 2'

但是,请注意,无论是什么使它们可能期望它们有用(它们不是)并保护各种内部Git对象(它们可能不会,因为Git的某些部分将它们拒绝为无效)。

它们实际上是无效的;请参阅the git check-ref-format documentation了解详情。 git update-ref命令拒绝创建错误的引用,所以(再次)不清楚是什么造成了它们。 (可能直接写入.git的邪恶软件。)


0
投票

您可以尝试以下方法之一:

  1. git fetch --all --prune 这将获取所有遥控器,并应修复“损坏的”遥控器。 --prune将从您的本地存储库远程远程访问所有已删除的内容,
  2. git fsck --full !小心这个,这个命令将验证你的所有git对象都没有被损坏,你应该得到一个悬挂的列表。 作为副作用,它将运行git gc并清理您未使用的数据。
© www.soinside.com 2019 - 2024. All rights reserved.