【发布时间】:2019-11-29 17:29:50
【问题描述】:
我们经常在我们的 git 存储库上使用rebase、amend 和其他操作,这些操作创建了许多“未使用”或中间提交。
更正式地说,未使用的提交是那些满足所有这些条件的提交:
- 他们确实没有有任何子提交并且
- 他们不是任何分支(本地或远程)的
HEAD - 它们不是任何标签(本地或远程)的
HEAD
是否有一种简单的方法可以 (1) 识别此提交列表并 (2) 永久删除它们?
谢谢!
【问题讨论】:
-
你急着放弃它们吗?通常这些对象会在一段时间后被垃圾收集,因为即使没有指向它们的分支/标签,也有其他指针仍在使用它们......一段时间(如 reflog 引用)。无论如何,您可以使用
git gc --aggresive --prune=now,但请查看git help gc或git-scm.com/docs/git-gc
标签: git