2016-11-20 144 views
1

我正在使用git并且意外创建了一个不必要的情况。这是我的git历史的样子:删除git中的合并分支提交

...a---b-------d---m---e... 
     \  /
     \-c-----/ 

我想删除分支。这并不重要。我不是git专家,并且尝试了许多事情而没有成功。理想情况下,我想有:

a---b---d---m---e 

我不需要关于如何保留历史记录的重要讲座。 c中的更改不足以成为分支。

回答

1

您可以使用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.