从HEAD

时间:2015-09-24 17:16:41

标签: git github merge pull-request revert

在GitHub中,我直​​接使用Web界面合并了拉取请求。在将合并的pull请求拉到我的本地后,我注意到代码中存在一个严重错误。所以,我回到了github的网站并恢复了拉取请求。此操作生成了一个新的pull请求,我将其暂时合并回master。

我有什么

--C1-----C3-------C1'  : master
   \    /  \      /
    -C2-    \    /     : bug-branch
             -C4-      : revert-pull-request-1

C1 是合并前的状态, C3 合并包含错误的分支( C2 )和 C1 '合并我的还原。因此, C1' C1 具有相同的代码。 C4 由GitHub自动生成。

我们希望主分支历史记录中的所有提交都是项目的功能副本,因此我决定更改历史记录以使 C3 脱离主分支。 (我的团队成员对此表示同意)。

所以,我把HEAD向后移了两次,力推了它。

将HEAD向后移动2次

----C1             : master
     |\
     | -C2         : bug-branch  
     |    \
     |-----C3--C1' : revert-pull-request-1

现在我想彻底摆脱 C1' C3 。但我担心再次移动HEAD会让它更加混乱。

如何摆脱 C3 C1' C4 发生了什么?

我想要的是什么:

----C1 : master
      \
       C2 : bug-branch

1 个答案:

答案 0 :(得分:1)

Isn&#t; t revert-pull-request-1此时只是另一个分支?删除该分支应删除C3C1'提交,为您留下您想要的历史记录。