删除与其他合并分支一起使用的分支

时间:2018-06-07 17:05:55

标签: git revert gitkraken

我有3个分支机构;

A:我们用于测试的主要分支。

B:已更改的分支必须位于A分支中。

C:更改那些的分支不得在A分支中。

所以,当我在B上工作时,我将C合并为B并继续研究B. 最后我将B合并为A。

我想从A中删除所有C提交但在A中保留B分支。

我使用的是GitKraken,但每个建议都会被接受。

1 个答案:

答案 0 :(得分:0)

如果分支C不是太大,我会使用" git revert"。在像GitKraken这样的GUI客户端中,您通常可以右键单击提交并且"还原"它

例如,如果你的C分支提交了[C1,C2](按此顺序),你应该首先恢复C2,然后是C1:

git revert C2
git revert C1

注意:在这里用C1提交的SHA替换C1。

如果其中一个恢复没有干净地发生,您需要找到并解决冲突。

如果将C合并到B中并不是快进合并,而是生成合并提交,则可以在历史记录日志中找到合并提交 - " Cm" - 并尝试恢复该单一提交:

git revert Cm

如果你在C中有超过3个提交,我会尝试将A重置为之前的状态(在B合并之前),准备一个新的干净版本B - 称之为B2 - 并将B2合并到A.