【发布时间】:2012-06-10 07:08:45
【问题描述】:
我很好奇如何删除 git 中的第一次提交。
提交任何事情之前的修订是什么?此修订版是否有名称或标签?
【问题讨论】:
-
从 git 开始,你应该知道修订是没有意义的。您可以谈论提交或它们的相关 SHA。另外,你为什么要这样做?第一次提交是一切的基础。您可以将几个提交压缩在一起,包括第一个提交,它成为新的第一个提交,但是甚至删除第一个提交(或删除除最后一个提交之外的任何提交)意味着什么?
-
@Shahbaz 是的,这是最好的方法,例如:ariejan.net/2011/07/05/git-squash-your-latests-commits-into-one
-
您可以使用
git rebase -i --root。有关详细信息,请参阅以下 SO 答案:stackoverflow.com/questions/2246208/… -
This answer有删除当前分支的root commit的正确解决方案:
git filter-branch --parent-filter "sed 's/-p <the_commit>//'" HEAD
标签: git repository commit git-commit