Git-Flow撤消已完成的功能分支

时间:2013-05-28 12:50:37

标签: git git-flow

如果要“撤消”功能分支,您有哪些选项?假设您添加了一个新功能supercool-feature,您将完成该功能(合并到开发中并删除功能分支),然后进入发布版。但是,您的用户真的不喜欢这个supercool-feature。如何撤消/回退/反转已合并到开发和发布中的此功能?

我正在使用SourceTree进行版本控制。

2 个答案:

答案 0 :(得分:14)

运行此命令

git revert -m 1 <sha1 of M>

<强>解释

您的情况如下:

A-B-----C---D-M     # master
   \         /
    X-Y---Z-        # supercool-feature

A,B,C和D位于主分支中,即功能分支中的X,Y和Z.当你做git merge supercool-feature时,Git为你创建了一个“合并提交”M.此提交包含来自功能分支的所有提交以及修复合并冲突的可能修复。因此,如果您提交revert,那么您的featurebranch的每次更改都将再次消失。

答案 1 :(得分:1)

实际上命令是

git revert -m 1 <sha1 of M>

删除M向后移动包含X,Y,Z的分支,该分支不是主线1。

相关问题