如何从GitHub移除悬空提交?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (44)

我的主分支只跟踪第二次提交,但是第一次提交仍然可用,并且仍然在我的活动提要中。我如何删除它,以确保没有人意外地拉动提交而不是修正版本?

提问于
用户回答回答于

GitHub将定期垃圾收集无法从顶级引用(例如标记、分支或重触发器)到达的任何提交(和其他对象)。这意味着随着时间的推移(比如在下个月),这个对象将消失。

拉出应该生成一个只包含引用对象的包,所以没有人应该因为克隆或拉而得到提交。例如,

$ git clone git://github.com/nylen/connectbot.git
Cloning into connectbot...
remote: Counting objects: 6261, done.
remote: Compressing objects: 100% (1900/1900), done.
remote: Total 6261 (delta 3739), reused 5980 (delta 3520)
Receiving objects: 100% (6261/6261), 3.04 MiB | 3.40 MiB/s, done.
Resolving deltas: 100% (3739/3739), done.
$ git cat-file -t 1cd775d
fatal: Not a valid object name 1cd775d

用户回答回答于

删除存储库如果你能承受失去所有问题的代价,那么在没有不良承诺的情况下重新创建它似乎是可行的。数据也会从提交API中消失(尽管推事件仍然可见)。

扫码关注云+社区