[英]How to preserve adjusted merge commits (conflicting and non-conflicting automerge results) with git rebase?
我正在使用git rebase -i --rebase-merges <commit>
来更改一些提交消息,效果很好。 但是我想保留的合并提交有更改或冲突解决方案; 有没有一种简单的方法可以重做它们?
我目前的工作如下:
merge -C <commit>
更改为merge -c <commit>
以确保不会自动提交合并提交git checkout <commit> -- .
( -- .
需要防止 HEAD 被重置为 )这里没有王道:当您进行了邪恶合并并要求 Git 重新执行该合并(使用git rebase -r
或类似命令)时,Git 根本不会进行邪恶合并。
出于这个原因,有时最好进行非邪恶合并并跟进修复提交,即使非邪恶合并在某种意义上是“坏的”(例如,不编译或包含已知错误)。 如果您不喜欢这种方法,有时您可以在进行合并之前进行提交,这样所产生的非恶意合并是好的。 但这可能会将“不良”推入该提交(合并前的修复),让您拥有相同的糟糕设置。
您可以选择一些不好的解决方案:进行邪恶的合并并避免重新调整它; 做一个邪恶的合并,并在重新调整它时付出额外的努力; 或者通过使用修复提交来避免邪恶的合并。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.