p4merge和Git 1.8.3

时间:2013-10-21 10:18:15

标签: git p4merge

如何配置Git以将p4Merge用作我的mergetool?

接下来是我目前的情况:

$ git --version
git version 1.8.3.msysgit.0

$ git mergetool

This message is displayed because 'merge.tool' is not configured.
See 'git mergetool --tool-help' or 'git help config' for more details.
'git mergetool' will now attempt to use one of the following tools:
tortoisemerge emerge vimdiff
No known merge tool is available.

3 个答案:

答案 0 :(得分:3)

文章Installing and Using P4Merge in Git for Windows为我工作。

编辑您的全局.gitconfig并添加以下部分(您不必担心p4merge.exe所在的位置,它在安装期间已添加到您的路径中):

[diff]
    tool = p4merge
[difftool "p4merge"]
    cmd = "p4merge.exe $LOCAL $REMOTE"
[merge]
    tool = p4merge
[mergetool "p4merge"]
    cmd = "p4merge.exe $BASE $LOCAl $REMOTE $MERGED"
    trustExitCode = true
    keepTemporaries = false
    keepBackup = false
    prompt = false
  

有一个警告,为了运行“git difftool”或“git mergetool”   你必须首先运行“git diff”或“git merge”并有所不同   或冲突。然后编辑器将准备好正确的文件   用于编辑。

答案 1 :(得分:1)

我刚刚发布了一篇文章,解释了如何将Git与P4Merge集成在一起,并启动了一些启发式脚本,这些脚本可以解决一些差异:http://pempek.net/articles/2014/04/18/git-p4merge/

答案 2 :(得分:1)

要在Linux计算机( Ubuntu 16.04 )上安装p4merge并将其设置为git的{​​{1}}和difftool,我做了以下:

  1. 转到Perforce网站的Downloads page,然后在搜索栏中输入:mergetool

  2. 选择适用于Linux平台的p4merge并下载(请注意,您可以跳过注册)。

  3. 下载完成后,将其解压缩并将其内容复制到新文件夹p4merge

    a)/opt/p4merge

    b)gunzip p4v.tgz

    c)tar xvf p4v.tar

    d)我已将其下载到sudo mkdir /opt/p4merge,并且“提取的” p4merge文件夹为(08/19) p4v-2019.1.1830398 ,因此在我的情况是:

    /home/guya/Downloads

  4. 使用以下命令创建指向sudo mv /home/guya/Downloads/p4v-2019.1.1830398/* /opt/p4merge可执行文件的符号链接:p4merge

  5. 将以下命令添加到sudo ln -s /opt/p4merge/bin/p4merge /usr/local/bin/p4merge的“全局配置设置”中,因此git将同时用作p4merge的{​​{1}}和{{1 }}:

    git

    difftool

  6. 为了查看差异(例如,在工作目录与暂存区之间),您现在可以使用命令:mergetool,它将打开要使用的p4merge GUI。

    < / li>

注意:git config --global merge.tool p4merge git config --global mergetool.p4merge.path /usr/local/bin/p4merge git config --global mergetool.prompt false仍将起作用,并将在终端中显示差异。