每当我从中央存储库更新我的回购时,我的主分支上都有特定的合并提交。现在,无论何时我从主服务器创建新分支,这些提交都会出现在非常烦人的请求中。如何在更新时删除这些提交并在将来避免它们? 我知道这些问题已被问到,但没有任何工作对我来说。如何删除合并提交
Q
如何删除合并提交
1
A
回答
2
这里的问题是您的主分支包含不属于上游存储库的提交(具体而言,合并提交)。正因为如此,任何基于这个主分支的分支也会有这些提交,所以任何要求将这些分支中的一个分支合并到上游主分支的PR也会包含它们。
要解决这个问题,您可以将本地主服务器从上游存储库重新绑定到主服务器上。默认情况下,git rebase
忽略合并提交,所以这应该消除分支历史记录中任何多余的提交。假设你有上游资源库设置为远程命名upstream
,你可以是这样做的:
git fetch upstream
git checkout master
git rebase upstream/master
git push -f origin master
或者交替,如果你确定你的主分支包含您想保留这不是活得没有变化牛逼已经在上游资源库的主分支(其中,基于什么你中的问题,应该是这样说),你可以简单地将其复位即可匹配上游主:
git fetch upstream
git checkout master
git reset --hard upstream/master
git push -f origin master
此步骤完成后,将您的功能分支重新分配到新的主分支上:
git checkout feature
git rebase master
git push -f origin feature
这应该从您的pull请求中删除额外的合并提交。
+0
非常感谢。此解决方案工作。 –
相关问题
- 1. 合并/删除提交
- 2. 删除Git中的合并提交
- 3. 删除合并提交两次的提交
- 4. 如何删除合并分支和压缩提交
- 5. 如何在一些提交后删除git合并
- 6. 如何删除不需要的提交和合并
- 7. 如何删除提交
- 8. 如何删除提交?
- 9. 合并提交提交
- 10. 如何删除Git合并?
- 11. 合并提交
- 12. Git撤消合并但不删除以后提交
- 13. git(集线器)从合并中删除提交
- 14. Git的撤销合并是删除未提交的修改
- 15. SourceTree - 删除一个推送和合并的提交
- 16. 删除合并提交,保持当前更改
- 17. 删除git中的合并分支提交
- 18. 删除旧的提交:`git rebase`导致合并冲突
- 19. Git从合并请求中删除不需要的提交
- 20. 删除Git中提交并与它
- 21. 删除上次提交并推送
- 22. 合并时排除恢复提交
- 23. 如何编辑以前的提交,并在不删除git之前的提交?
- 24. Git - 如何返回上次提交并删除所有未提交的文件?
- 25. 为什么git创建合并提交?以及如何删除这些?
- 26. 如何从Gitlab中的提交表中删除任何提交?
- 27. Git - 删除提交
- 28. 删除提交人
- 29. TortoiseHG:删除提交
- 30. 如何删除Facebook“目前不符合提交资料”?
未来;不要拉。取而代之。 (或拉,但用'--rebase'。) – Biffen
使用'merge --no-ff'? – mic4ael
@ mic4ael这不会*创建*合并提交? – Biffen