我最近在我的仓库上运行了git fsck –lost-found 。 我期望看到一些悬而未决的提交,我已经重置了HEAD 。 然而,我惊奇地发现数千条悬而未决的信息。 我不相信我的存储库有什么问题,但是我对这些悬挂的blob是什么原因感到好奇? 只有两个人在存储库上工作,我们没有做任何不寻常的事情。 我不认为它们是由一个旧版本的文件replace成一个新版本创build的,因为git需要保存在两个blob中,所以它可以显示历史logging。 来想一想,有一点我们确实添加了一个非常大的目录(数千个文件)到项目中,然后删除它。 这可能是所有晃来晃去的斑点的来源? 只是寻找这个神秘的见解。
我在寻找悬挂提交和斑点的基本信息。 我的回购看起来很好。 但是我第一次运行git fsck来看看它做了什么,我有一长串“晃来晃去的斑点”和一个“悬挂提交”。 这些是什么? 哪儿来的呢? 他们是否指出我回购的状况有什么不同(好的或坏的)?
我有一个Git仓库,有很多提交没有特定的分支,我可以git show他们,但是当我尝试列出包含他们的分支,它没有报告什么。 我认为这是悬而未决的提交/树问题(由于-D分支),所以我修剪了回购,但是在那之后我仍然看到相同的行为: $ git fetch origin $ git fsck –unreachable $ git fsck 没有输出,没有什么悬挂(对吧?)。 但提交存在 $ git show 793db7f272ba4bbdd1e32f14410a52a412667042 commit 793db7f272ba4bbdd1e32f14410a52a412667042 Author: … 并且它不能通过任何分支到达 $ git branch –contains 793db7f272ba4bbdd1e32f14410a52a412667042 没有输出。 那个提交的状态到底是什么? 如何列出所有类似状态的提交? 我怎样才能删除这样的提交?