p4merge and Git 1.8.3



如何配置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.

要在Linux机器(Ubuntu 16.04)上安装p4merge并将其设置为gitdifftoolmergetool,我做了以下操作:

  1. 转到Perforce网站的下载页面,然后在搜索栏中写下:p4merge

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

  3. 下载后将其解压缩并将文件夹的内容复制到新文件夹中/opt/p4merge

    a) gunzip p4v.tgz

    b) tar xvf p4v.tar

    c) sudo mkdir /opt/p4merge

    d)我已将其下载到/home/guya/Downloads,"提取"的p4merge文件夹是(08/19)p4v-2019.1.1830398,因此在我的情况下,命令是:

    sudo mv /home/guya/Downloads/p4v-2019.1.1830398/* /opt/p4merge

  4. 使用以下命令创建指向p4merge可执行文件的符号链接:sudo ln -s /opt/p4merge/bin/p4merge /usr/local/bin/p4merge

  5. 将以下命令添加到git的"全局配置设置"中,以便p4merge将用作gitdifftoolmergetool

    git config --global merge.tool p4merge git config --global mergetool.p4merge.path /usr/local/bin/p4merge git config --global mergetool.prompt false

    git config --global diff.tool p4merge git config --global difftool.p4merge.path /usr/local/bin/p4merge git config --global difftool.prompt false

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

注意:git diff仍然有效,并将在终端中显示差异。

文章在 Git for Windows 中安装和使用 P4Merge 对我有用。

编辑您的全局 .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"并有所不同 或冲突。 然后编辑器将启动并准备好正确的文件 进行编辑。

我刚刚发布了一篇文章,解释了如何将 Git 与 P4Merge 集成,以及一个消除一些差异的启动器脚本:http://pempek.net/articles/2014/04/18/git-p4merge/

相关内容

  • 没有找到相关文章