能否配置TortoiseGit自动合并,合并失败时生成冲突文件供后续合并使用?
TortoiseGit合并冲突相关问题解答
问题原因说明
你遇到的“无法操作”提示既不是Git本身的问题,也不是TortoiseGit的功能缺陷,是二者默认的工作区校验逻辑和SVN不同导致的:
Git默认会在执行pull(对应SVN的更新操作)前校验本地工作区是否存在未提交的修改,如果待拉取的远端改动和你本地未提交的修改覆盖了同一文件的相同位置,TortoiseGit默认会直接终止操作避免未经授权覆盖本地内容,不会像SVN一样默认直接启动自动合并流程。
配置自动合并与冲突文件生成
你可以通过调整设置实现和TortoiseSVN一致的使用体验,操作步骤如下:
- 右键任意目录打开TortoiseGit设置界面,依次进入「Git」→「Pull」分类
- 勾选 自动储藏未提交的改动(Auto stash before merge) 选项,保存设置即可
配置完成后执行pull操作时,TortoiseGit会自动暂存你本地的未提交改动,拉取远端内容后自动尝试合并,出现不可自动解决的冲突时会和SVN一样生成冲突标记文件,同时在原文件中插入<<<<<<<、=======、>>>>>>>格式的冲突分段标记。
冲突合并操作步骤
出现冲突后你可以按照和TortoiseSVN几乎一致的流程处理:
- 右键标记为冲突状态的文件,选择「TortoiseGit」→「编辑冲突」,唤起你预设的合并工具
- 合并工具会分栏展示本地修改版本、远端修改版本和合并结果预览,手动调整完成后保存退出
- 回到资源管理器右键该冲突文件,选择「标记已解决」,TortoiseGit会自动清理临时冲突文件,之后正常提交改动即可
内容的提问来源于stack exchange,提问作者dgxhubbard
相关产品推荐
相关产品推荐

