删除git中的合并分支提交
问题描述:
我正在使用git并且意外创建了一个不必要的情况。这是我的git历史的样子:删除git中的合并分支提交
...a---b-------d---m---e...
\ /
\-c-----/
我想删除分支。这并不重要。我不是git专家,并且尝试了许多事情而没有成功。理想情况下,我想有:
a---b---d---m---e
我不需要关于如何保留历史记录的重要讲座。 c
中的更改不足以成为分支。
答
您可以使用rebase
。它基本上将分支重置到您指定的点,然后按照您告诉的方式重新提交顶端的提交。在这种情况下,您将排除提交C:
git rebase -i HEAD~5 # 5 is the number of commits back to rebase
# Comment out or delete the line for commit C
# Save/proceed
正如您所指出的,您不关心保留历史记录。这个过程将改变提交散列后提交C.