git 删除合并点之间分支上的所有提交
git remove all commits on branch between merge points
这是我的情况图,代表提交的点(这实际上来自 SourceTree;我把它放在一边以便更容易看到,时间从左到右流动):
这是由于一个错误(由创建了一个额外分支的交互式变基引起的——我不知道为什么)。我想删除端点之间之间的所有蓝点(提交),只留下左端点、下行(红点)和右端点。我可以吗?没有推送任何东西(没有遥控器);我只是想清理我的历史。
您所要做的就是修复右侧最后的蓝色提交。它有两个父项,一个蓝色和一个红色提交,而您希望它只有红色父项。如果您编辑提交并删除蓝色父项,则整个蓝色提交行将从您的提交历史记录中有效消失,因为不会有任何提交将它们列为祖先。
参见: Remove spurious commit parent pointer
这是我的情况图,代表提交的点(这实际上来自 SourceTree;我把它放在一边以便更容易看到,时间从左到右流动):
这是由于一个错误(由创建了一个额外分支的交互式变基引起的——我不知道为什么)。我想删除端点之间之间的所有蓝点(提交),只留下左端点、下行(红点)和右端点。我可以吗?没有推送任何东西(没有遥控器);我只是想清理我的历史。
您所要做的就是修复右侧最后的蓝色提交。它有两个父项,一个蓝色和一个红色提交,而您希望它只有红色父项。如果您编辑提交并删除蓝色父项,则整个蓝色提交行将从您的提交历史记录中有效消失,因为不会有任何提交将它们列为祖先。
参见: Remove spurious commit parent pointer