我做了一个未完成的分支到主人的合并。我做了一个revert merge来反转代码更改。
现在问题是我无法再将此特定分支合并到master。所以我现在打算做的是创建一个新的虚拟分支,并选择丢失的提交并将其放入新分支,并将上述分支合并到新创建的分支,并从新创建的分支恢复开发。这会奏效。
我的问题是在git中有一种实现相同目标的简洁方法吗?
我不想恢复还原。
由于
答案 0 :(得分:0)
你的第二次合并无效,因为git知道它已经合并了。
您对樱桃选择的看法是一种选择。我建议你使用变基而不是樱桃挑选。
git checkout dev
// do your staff
git add .
git commit -m "Finish the work"
git rebase master
这样,您可以从master分支的最后位置再次重新生成dev分支的所有历史记录。 git现在允许你合并它。
答案 1 :(得分:0)
除了你应该做的樱桃挑选之外,还有一种让git认为分支仍未合并的棘手方法 - 用相同的非合并提交替换合并提交。
git replace --edit <merge commit>
在编辑器中打开将是文本
tree AAAAA
parent BBBB
parent CCCCC
author ...
然后删除第二个&#34;父母&#34;行(与CCCC),保存,退出。现在,合并提交将被视为简单提交git,并且可以再次合并分支。
第二次合并后可以删除替换。