【发布时间】:2018-06-29 14:42:13
【问题描述】:
我正在开发一个开发分支和两个不同的(本地)功能分支。
a -- b -- e <-- develop
\ \
\ f -- g <-- feature-branch-1
\
c -- d <-- feature-branch-2
我通过运行将 feature-branch-1 的更改合并到 feature-branch-2 中
git checkout feature-branch-2
git rebase feature-branch-1
如果我理解正确,它现在看起来像这样:
a -- b -- e <-- develop
|\
| f -- g <-- feature-branch-1
\
f -- g -- c -- d <-- feature-branch-2
但是,我随后意识到我在分支 1 中引入了一个我不知道如何修复的错误。所以这个错误现在也在分支 2 中,并且阻止我将 feature-branch-2 合并到开发中。我想回到原来的状态
a -- b -- e <-- develop
\ \
\ f -- g <-- feature-branch-1
\
c -- d <-- feature-branch-2
这样我就可以安全地将 feature-branch-2 合并到开发中。我怎样才能做到这一点?
【问题讨论】:
-
您可以尝试从
develop创建一个新的空分支并使用git cherry-pick只接受c和d的提交。 -
只有两个提交
c和d值得保留,这是可以接受的。如果我在一个长期运行的特性分支上工作,单独选择提交是不可接受的。不过,我感谢您的帮助!
标签: git git-rebase feature-branch