I use windows 7
。我想用p4merge
作为 Git 差异/合并工具。我跟随本文 https://danlimerick.wordpress.com/2011/06/19/git-for-window-tip-use-p4merge-as-mergetool/ and this one http://the-sourceterous.ghost.io/using-perforce-p4merge-as-diff-tool-for-git/设置和配置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
Now git mergetool
命令工作正常。但是当我使用git difftool
命令输入git bash
, 我预计p4merge
但我看到 diff 的内部实现git bash
.
I tried 流畅的 Git + P4merge http://pempek.net/articles/2014/04/18/git-p4merge/但它对我不起作用,我也尝试按照中所述进行操作外部合并和差异工具 https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#External-Merge-and-Diff-Tools但我不明白这一点。
Note:
当冲突类型为removed file conflict
, git difftool
命令打开p4merge
.
不确定是否有帮助,但最新版本的 Git 支持 P4Merge(我使用git version 2.17.0.
在 Windows 上通过 MSYS2)。
您可以通过运行来判断是否是这种情况git difftool --tool-help
。它将列出 Git 可以使用的可用工具(因为他们在您的%PATH%
)及其工具could使用(如果已安装)。
If p4merge
在此列表中,那么您只需添加路径即可p4merge.exe
驻留在您的%PATH%
(在 Windows 上我推荐快速环境编辑器 https://www.rapidee.com为了这)。
完成此操作后,您只需将以下配置添加到您的.gitconfig
[diff]
tool = p4merge
[merge]
tool = p4merge
没有别的。所以删除其他东西,比如difftool.path
等等。
然后只需使用git difftool
or git mergetool
尽您所能。
Note:我有一个存储库,即使我确实发出了git difftool
or git mergetool
命令 P4Merge 无法启动。我不确定该回购协议中存在什么问题。但是我尝试在我的驱动器上的某个地方创建一个空的存储库git init
,添加一个文件,提交它,然后修改它,then我试过difftool
它起作用了。因此,如果上述描述对您不起作用,那么问题可能出在其他地方。希望这可以帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)