PhpStorm中Git>Pull不弹出合并冲突对话框的解决方法
Git Pull 无法弹出冲突对话框的解决方案
问题根源
这不是IDE的新特性,而是Git在2.27版本(2020年6月)更新了默认配置:此前Git Pull默认会在分支分叉时自动执行合并操作,触发IDE的冲突对话框;而新版本默认设置pull.ff=true,即仅当本地分支可快进时才完成Pull,否则直接报错提示“分支已分叉,需指定调和方式”,这就是你近几个月遇到问题的原因。
恢复自动弹出冲突对话框的方法
要让Git Pull回到之前的行为,在分支分叉时自动尝试合并并触发冲突对话框,只需修改Git配置:
- 针对当前仓库生效:在仓库根目录执行命令
git config pull.ff false - 全局生效(所有仓库适用):
git config --global pull.ff false
该配置会让Git Pull在任何情况下都执行合并操作(即使可以快进也会创建合并提交),当合并遇到冲突时,IDE的冲突处理对话框就会自动弹出。
本地变更栏无冲突处理链接的解决办法
如果执行合并后本地变更栏仍未显示冲突处理入口:
- 先重启IDE,清除缓存后重新查看本地变更栏;
- 可手动执行
git mergetool命令,调用你配置的Git合并工具处理冲突。
关于冲突对话框的自动弹出
当Git执行合并操作遇到冲突时,主流IDE(如VS Code、IntelliJ系列)都会自动弹出冲突处理对话框,前提是Git配置允许自动触发合并(即上述pull.ff=false配置)。
内容的提问来源于stack exchange,提问作者Luke G.
相关产品推荐
相关产品推荐

