如何通过VSCode先提交冲突修复至分支,再执行合并操作?
如何在VSCode中修复Git冲突并将修复提交到feature分支后再执行独立合并提交?
当前问题
使用VSCode解决Git合并冲突时,默认的“标准”自动合并会在修复冲突后直接创建包含冲突解决的合并提交并完成合并。但希望保留VSCode合并编辑器的便捷性,先将冲突修复提交到待合并分支(feature-branch),待该分支无冲突后再执行独立的merge commit。
期望流程
| °\ merge commit | | | ° commit fix merge conflict using merge editor in VSCode |\| trying the merge but conflicts arise | | 1 2
当前VSCode执行流程
| °\ commit fix conflict on VSCode merge editor and merges | | |\| trying the merge but conflicts arise | | 1 2
注:分支1为develop,分支2为feature-branch
可行方案(步骤详解)
完全可以实现你的期望流程,具体操作如下:
- 切换到本地
feature-branch分支:git checkout feature-branch - 执行带参数的合并命令,仅尝试合并但不自动提交:
git merge --no-commit --no-ff develop - 此时Git会检测到冲突,打开VSCode的合并编辑器,按常规方式解决所有冲突
- 冲突解决完成后,暂存所有修改:
git add . - 将冲突修复提交到
feature-branch:git commit -m "Fix merge conflicts with develop" - 切换回
develop分支:git checkout develop - 执行独立的合并提交:
git merge feature-branch,此时会生成单独的merge commit,完成合并
内容的提问来源于stack exchange,提问作者NicoCaldo
相关产品推荐
相关产品推荐

