我在有两次提交的存储库上做了一些测试。这些中的任何一个都会将头设置为第一个提交,并确保当我执行“git log”时第二个提示不显示。
Alernative 1:
git reset --hard [commit 1 hash]
备选方案2:
git rebase --onto master~1 master~0 master
但是如果我试试这个:
git reset --hard [commit 2 hash]
HEAD返回到提交2(这证明它从未被删除)。如何真正永久删除它?
答案 0 :(得分:0)
git gc
应该做到这一点。默认情况下,它将修剪超过2周的无法访问的提交;您可以使用--prune=<date>
覆盖此内容。
运行git help gc
以获取有关将会收集垃圾的详细信息。