在我的回购中,我有一个主分支和一个错误修复分支。我做了我的错误修正,并将其合并到主。然后,在一个疯狂的愚蠢的错误中,我做了不可思议的事情。在与git commit --amend
合并后,我添加了3个字符。我重写了历史。然后,令我沮丧的是,它只影响到master,而不是bugfix,所以如果我运行(在master上)git branch --no-merged
我看到bugfix没有合并。所以,我签出bugfix,并做出相同的更改,使git diff bugfix master
什么也没有返回,然后从主控我再次检查git branch --no-merged
,它仍然说bugfix没有合并。所以,现在我有两个相同的分支,我想合并它们不是,我不想使用另一个提交。我如何将它们合并,让git将它们视为合并,并且git branch --no-merged
不会返回bugfix?“合并”两个相同的分支
1
A
回答
1
有时候当你迷路时,最谨慎的做法就是当你没有迷路的时候,将你的脚步回溯到前一点。在你的情况下,我会撤销master
中的修改合并提交,并在bugfix
中核实“修复”提交。然后重做合并而不做任何其他更改。
撤消错误提交的修正:
git checkout bugfix # switch to bugfix
git reset --hard HEAD~1 # nuke the fix commit
撤消合并犯主:
git checkout master # switch to master
git reset --hard HEAD~1 # nuke the amended merge commit
现在你可以重做合并:
git merge bugfix
注意:这个答案假设您还没有将任何东西推到遥控器上。如果有,那么您将需要使用git revert
来撤销错误提交而不是重写历史记录。
相关问题
- 1. Git合并两个分支并将两个分支带到同一层
- 2. Gitlab合并两个分支
- 3. git合并 - 合并两个分支与不同的指针
- 4. 拆分分支在两个分支/合并分支有选择
- 5. 我怎么合并两个颠覆分支(合并分支7.3至RC分支)
- 6. 合并两个分支的颠覆
- 7. 如何将两个分支分支并排合并成一个分支?
- 8. GIT:合并分支两次
- 9. 合并两个相同的表
- 10. 使两个分支完全相同git
- 11. 如何合并两个SVN分支?
- 12. 用git tfs合并两个TFS分支
- 13. Xcode合并两个分支Git
- 14. Git,合并两个远程分支
- 15. 与Xcode合并两个分支
- 16. Git:合并两个远程分支
- 17. 第三合并两个分支
- 18. Git合并发行两个分支
- 19. 在两个分支合并差异
- 20. Mercurial - 将两个分支合并为第三个新分支
- 21. 如何合并两个在git中彼此不同的分支
- 22. 合并两个串的相同的部分在TCL
- 23. git rebase在同一分支上合并两个提交
- 24. 合并两个分支时源分支是否被修改?
- 25. 的Git分支:容易合并第三分支为两个相互冲突的分支
- 26. 将分支合并到与起始分支不同的分支
- 27. 合并提交从主分支到另一个分支,但不合并两个分支
- 28. 合并两个分支而没有实际合并
- 29. 混帐合并暧昧而合并两个分支
- 30. 意外地分支了错误的分支,当我想合并到主人我必须合并两个分支
撤消合并提交,再次合并,并从那里开始。我认为你所走的道路不会有结果(至少没有你想吃的东西)。 –
即使你做了修改,提交仍然有两个父母,并且是一个合并提交,所以没有任何意义,之后bug修复显示在 - 没有合并。 – DavidN
@DavidN我不知道它为什么发生,我只是列出发生在我身上的事情。我会试着重现它,并让你知道我是否可以。 – thesecretmaster