You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何设置Git Mergetool仅处理.py文件,保留本地.png文件?

解决合并时.png文件仍触发mergetool的问题

1. 先标记已处理的.png文件为冲突解决

你已经用git checkout --ours <xxx.png>或git checkout --theirs <xxx.png>选好了要保留的版本,但Git还没把这些文件从冲突列表中移除,所以mergetool依然会识别它们为未解决的冲突。执行以下命令告诉Git冲突已处理:

  • 单个文件:git add <xxx.png>
  • 批量处理所有.png:git add *.png

2. 配置Git实现.png文件自动合并(避免后续重复操作)

如果不想每次合并都手动处理.png,可以给Git设置专属的合并规则,让它自动选择本地/远程版本,不再触发mergetool:

  1. 在项目根目录执行以下配置命令:
# 自动保留本地分支的.png版本,要保留远程版本就把--ours换成--theirs
git config --local merge.driver.png.cmd "git checkout --ours %A"
git config --local merge.driver.png.name "Auto keep our .png files"
git config --local merge.driver.png.trustExitCode true
  1. 新建或修改项目根目录的.gitattributes文件,添加一行:
*.png merge=png

这行是告诉Git,所有.png文件使用我们刚才配置的png合并驱动处理。

排查:如果标记解决后仍弹出

运行git status检查这些.png文件的状态,如果还显示在"unmerged paths"或"both modified"列表里,说明之前的git add没生效,重新执行git add即可。

内容的提问来源于stack exchange,提问作者Nelson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 20:15:39