如何解决有没有一种方法可以指定执行合并时git始终使用的自定义工具?
在我的一个项目中,我有一些带有特定扩展名的文件,我想使用自己的特定工具而不是git本身来合并。
我知道可以通过以下方式在.gitconfig
中指定自定义合并和差异工具:
[difftool "sourcetree"]
cmd = 'C:/somepath/difftool.exe' \"$LOCAL\" \"$REMOTE\"
[mergetool "sourcetree"]
cmd = 'C:/somepath/difftool.exe' \"$BASE\" \"$LOCAL\" \"$REMOTE\" -o \"$MERGED\"
该mergetool将被自动调用以解决冲突。 但是(除非我错过了一些事情),git首先会尝试合并文件本身。出问题的是,git会尝试将这些文件合并为常规文本文件(例如,代码),并且可能会错过存在冲突的事实,或者认为存在冲突而没有冲突。
$ git merge foo
Auto-merging somefile //custom mergetool not called :(
CONFLICT (content): Merge conflict in index.html
Automatic merge Failed; fix conflicts and then commit the result.
我希望在必须合并文件后总是调用我的合并工具(无需git尝试自行进行自动合并)。这可能吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。