如何在Git中"退出"功能分支合并?

Sca*_*ace 6 git

我对Git相对较新,我想知道这是否正确以及是否有其他方法可以删除合并到master分支的功能分支.让我用一个例子来解释一下:

我们假设我们正在处理三张票(错误/增强功能),并且每个票证有三个功能分支,每个票证都从Tag v2.0.21分支出来.在对每个故障单进行开发工作之后,经过充分测试后,我们将其合并到主分支并将该分支标记为v2.0.22并将其发布到生产中.

在产品发布之后,让我们说我们发现其中一张票(Ticket2)失败了,应该删除.这就是我的想法,我想知道这是否是一个很好的方法来删除与Ticket2相关的提交.

比如说,

  1. 从v2.0.21创建一个新分支
  2. 在此新分支上合并Ticket1(Branch1)和Ticket3(Branch3)
  3. 强制推动新分支掌握.
  4. 标记为V2.0.23
  5. 从v2.0.23发布代码到生产.

我希望有人可以帮我验证这种方法,并提出更好的方法来删除已经合并到master的功能分支.谢谢!

Gre*_*ill 7

如果您的合并创建了"合并提交",这通常是一个好主意,那么您可以通过使用git revert带有该分支的合并提交的提交ID 的命令来反转特定功能分支的更改.

Git文档包含有关如何还原错误合并的详细说明,其中包含您可能认为有用的更多信息.