执行git cherry-pick --continue弹出黑白界面该如何正确操作?
Cherry Pick冲突相关问题解答
1. 弹出的黑白界面是什么
该界面是Git默认配置的Vim文本编辑器,执行git cherry-pick --continue时触发,Git会自动调出编辑器让你确认或修改本次cherry pick生成的提交信息。
对应操作方式:
- 无需修改提交信息:按
Esc退出编辑模式,输入:wq后回车,即可保存退出并完成提交 - 需要修改提交信息:按
i进入插入模式,修改内容完成后按Esc,再输入:wq回车即可 - 终止当前提交:按
Esc后输入:q!回车强制退出,cherry pick流程会停留在当前状态
如果不想每次都弹出这个界面,可以在执行git cherry-pick --continue时加上--no-edit参数,直接复用原提交的信息完成提交。
2. Cherry Pick冲突的正确解决流程
通用全流程
- 触发cherry pick操作后,Git出现冲突提示,此时仓库处于
cherry-picking状态,所有冲突文件会被标记为both modified - 逐个打开冲突文件,删除
<<<<<<< HEAD、=======、>>>>>>> [拣选提交哈希]的冲突标记,保留最终需要的代码内容 - 确认所有冲突修改无误后,执行
git add <冲突文件路径>,你使用的git add *.java属于该步骤的正确操作 - 执行
git cherry-pick --continue完成流程,若要跳过编辑器弹出可直接执行git cherry-pick --continue --no-edit - 若中途要放弃本次cherry pick,执行
git cherry-pick --abort即可回到操作前的分支状态
IDEA场景下的简化操作
你在IntelliJ中完成冲突编辑后,无需切换到Git CMD执行命令:
- 冲突解决窗口点击
Apply后,IDEA会自动识别冲突已解决,弹出提交信息确认框 - 确认提交内容后点击提交,即可直接完成整个cherry pick流程
内容的提问来源于stack exchange,提问作者once
相关产品推荐
相关产品推荐

