Git Rebase时如何自动以Develop分支内容覆盖冲突?
如何在Git Rebase时自动用Develop分支内容覆盖冲突?
嗨,我来帮你搞定这个问题!既然你明确知道Develop分支的每个提交都能正常构建并通过测试,想要跳过手动解决冲突的麻烦,直接用Develop的内容覆盖rebase时的冲突,这有几个简单靠谱的方法:
方法一:一开始就指定自动解决策略
你不用先切分支再执行普通rebase,直接用带策略参数的命令一步到位:
git checkout develop git rebase master -X ours
这里的-X ours(全称是--strategy-option ours)会告诉Git:每次遇到冲突时,直接采用当前分支(也就是Develop)的版本,完全不用你手动去编辑冲突文件。刚好符合你的需求——毕竟你信任Develop分支的所有提交质量。
方法二:如果已经卡在冲突暂停状态了
要是你已经执行了普通rebase,现在已经停在冲突提示那里了,也不用慌:
- 用这条命令让所有冲突文件直接采用Develop分支的版本:
(这里的git checkout --ours ..代表当前目录下所有文件,如果你只想处理单个文件,把.换成具体文件名就行) - 把处理好的冲突文件标记为已解决:
git add . - 继续完成rebase:
git rebase --continue
小提醒:别搞混rebase和merge里的ours!
这里要注意,在git merge里ours指的是目标分支的版本,但在git rebase里,ours指的是**你正在rebase的当前分支(Develop)**的版本——刚好是你想要保留的内容,放心用就好。
内容的提问来源于stack exchange,提问作者Callum Linington
相关产品推荐
相关产品推荐

