我用windows 7。我想使用p4merge作为Git /merge工具。我遵循这篇文章和这一个设置和配置p4merge
git config --global merge.tool p4merge
git config --global mergetool.p4merge.path "C:/Program Files/Perforce/p4merge.exe"
git config --global diff.tool p4merge
git config --global difftool.p4merge.path "C:/Program Files/Perforce/p4merge.exe"这些行是来自git config的
merge.tool=p4merge
mergetool.p4merge.path=C:/Program Files/Perforce/p4merge.exe
diff.tool=p4merge
difftool.p4merge.path=C:/Program Files/Perforce/p4merge.exe
mergetool.keeptemporaries=false
mergetool.prompt=false现在,git mergetool命令可以正常工作。但是,当我在git bash中使用git bash命令时,我希望使用p4merge,但我看到了在git bash中diff的内部实现。
我试过光滑Git + P4merge,但它对我不起作用,我也试着像外部合并和差异工具中描述的那样做,但我不明白。
注:
当冲突类型为removed file conflict时,git difftool命令将打开p4merge。
发布于 2018-07-19 05:08:27
不确定是否有帮助,但最近版本的Git支持P4Merge (我通过MSYS2在Windows上使用git version 2.17.0. )。
通过运行git difftool --tool-help,您可以判断是否存在这种情况。它将列出Git可以使用的可用工具(因为它们已经在您的%PATH%中找到了)和它可以使用的工具(如果它们已经安装)。
如果p4merge在这个列表中,那么您只需要将p4merge.exe驻留的路径添加到您的%PATH% (在%PATH%上,我建议使用快速环境编辑器 )。
完成此操作后,只需在.gitconfig中设置以下配置即可
[diff]
tool = p4merge
[merge]
tool = p4merge没别的事了。因此,删除其他东西,如difftool.path和所有这些。
然后,只需使用git difftool或git mergetool来满足您的内心需求。
Note:我有一个存储库,即使我发出了git difftool或git mergetool命令,P4Merge也不会启动。我不知道那次回购有什么问题。但是,我尝试在我的驱动器上使用git init创建一个空的回购,添加一个文件,提交它,然后修改它,然后我尝试了difftool,它成功了。所以,如果上面的描述不适用于你,那么问题就在别的地方。希望这能有所帮助。
发布于 2016-06-15 13:50:15
迟到总比没有好:)
mergetool.p4merge.path应该是mergetool.p4merge.cmd
将合并工具和扩散工具行的路径更改为cmd。
发布于 2021-10-18 23:16:18
如果您在Mac上,请不要忘记在应用程序之前添加/,如下所示:
[mergetool "p4merge"]
path = /Applications/p4merge.app/Contents/MacOS/p4merge这就是为什么当我跑到下面的时候,P4Merge不肯给我开门的原因:
git mergetoolhttps://stackoverflow.com/questions/32152446
复制相似问题