迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 操作系统 > Git >

将 Meld 设置为 Git 的 Difftool 和 Mergetool

作者:迹忆客 最近更新:2023/03/29 浏览次数:

本文将讨论将 Meld 配置为 Git 的默认 diffmerge 工具。Meld 是一个很棒的 GUI diff 程序,它使我们更容易检查文件更改和合并结果。

第一步始终是下载和安装程序。完成后,跟随我们的领导。


将 Meld 配置为默认 Git Difftool

要将 Git 配置为使用 Meld 作为 difftool,我们需要更改我们的 .gitconfig 文件。我们将以下行添加到我们的 .gitconfig 文件中。

[diff]
    tool = meld
[difftool]
    prompt = false
[difftool "meld"]
    cmd = meld "$LOCAL" "$REMOTE"

计划的顺序将由 $LOCAL$REMOTE 参数的顺序决定。在我们的例子中,我们的原始文件 $LOCAL 将在左侧,而 $REMOTE 是右侧的修改文件。

如果你想反过来,请改用它。

cmd = meld "$REMOTE" "$LOCAL"

prompt = false 部分指示 Git 不要要求确认启动工具,默认情况下它会这样做。

我们可以将 git difftool 命令作为 git diff 命令运行。

$ git difftool <BranchName> file_name

将 Meld 配置为默认 Git Mergetool

由于其 GUI mergetool,Meld 还可以更轻松地解决合并期间的冲突。同样,我们将更改我们的 .gitconfig 文件以将 Meld 配置为 Git 的 mergetool

将下面的行添加到你的 .gitconfig 文件中。

[merge]
    tool = meld
[mergetool "meld"]
    # Choose one of these 2 lines
    cmd = meld "$LOCAL" "$MERGED" "$REMOTE" --output "$MERGED"
    cmd = meld "$LOCAL" "$BASE" "$REMOTE" --output "$MERGED"

当我们有合并冲突时,我们可以通过运行下面的命令来使用 Meld 作为我们的 mergetool

$ git mergetool

让我们简单看一下上面的参数。

  1. $LOCAL - 这是我们签出分支中的文件。
  2. $REMOTE - 这是我们试图合并的分支中的文件。
  3. $MERGED - 这是有合并冲突的文件。
  4. $BASE - 这是创建包含 $REMOTE 的分支时的原始文件。

$LOCAL$REMOTE 将在左右,这取决于你在 cmd 中的顺序,你可以在中间有 $BASE$MERGED。Meld 允许 3 向视图,我们应该编辑中间文件以解决冲突。

编辑完成后,我们可以关闭程序,Git 会自动更新文件。此时,我们已准备好提交更改并完成合并。

或者,我们可以在 Bash 上运行一些命令来更新我们的 .gitconfig 文件。

对于 Windows 用户,请运行这些命令。

$ git config --global diff.tool meld
$ git config --global difftool.meld.path "C:\Program Files (x86)\Meld\Meld.exe"
$ git config --global difftool.prompt false

$ git config --global merge.tool meld
$ git config --global mergetool.meld.path "C:\Program Files (x86)\Meld\Meld.exe"
$ git config --global mergetool.prompt false

确保你输入正确的路径到你的 MELD.exe 文件。

Linux 用户可以使用下面的命令来更新他们的 .gitconfig 文件。

$ git config --global diff.tool meld
$ git config --global difftool.meld.path "/usr/bin/meld"
$ git config --global difftool.prompt false

$ git config --global merge.tool meld
$ git config --global mergetool.meld.path "/usr/bin/meld"
$ git config --global mergetool.prompt false

使用你机器上的正确安装路径更新上面的代码。

简而言之,Git 最初的 diffmerge 界面并不吸引人。但是,我们可以将 Git 配置为使用 Meld 作为默认的 GUI difftoolmergetool

你需要做的就是按照上述步骤更新你的 .gitconfig 文件。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 Windows 系统中卸载 git

发布时间:2023/04/09 浏览次数:223 分类:Git

在这篇简短的文章中,我们将学习如何卸载 Git,以及如何在从个人计算机的目录中卸载 Git 后删除这些文件。

如何检查 Git 的版本

发布时间:2023/04/09 浏览次数:160 分类:Git

在这篇检查Git最新版本的文章中,我们将学习如何在本地个人计算机或任何服务器上检查Git版本。

Git 如何重命名本地分支

发布时间:2023/04/09 浏览次数:64 分类:Git

大多数情况下,重命名分支机构是由于上述情况。 因此,在本教程中,我们将学习使用下面提到的技术更改本地 Git 分支的名称。

重命名 Git 存储库中的文件和目录

发布时间:2023/04/09 浏览次数:102 分类:Git

在本文中,我们将讨论 git 中的重命名过程。 我们使用 Git Rename 来更改工作目录中文件和文件夹的名称。

在 Git 中取消初始化存储库

发布时间:2023/04/09 浏览次数:187 分类:Git

本本文介绍如何通过 Git 命令行取消初始化 Git 存储库。git init 命令开发一个新的空置 Git 存储库。 它还用于重新初始化已经存在的 Git 存储库。

Git 仓库名称该如何命名

发布时间:2023/04/09 浏览次数:208 分类:Git

使用 Git 时,选择一个简洁且最新的存储库名称是一项艰巨的任务。本教程介绍了如何以独特的方式命名 Git 存储库。

配置 Git 以忽略文件模式更改

发布时间:2023/04/09 浏览次数:67 分类:Git

本文讨论配置 Git 以忽略文件更改 chmod 所需的步骤。 如果您更改 Git 正在跟踪的文件的权限,系统将在该文件中注册更改。

在 Git 中暂存已删除的文件

发布时间:2023/04/09 浏览次数:93 分类:Git

本文讨论了在 Git 中暂存已删除文件的必要步骤。我们知道 rm 命令可以删除一个文件,而无需将其从工作目录中移除。 那么,我们如何暂存已删除的文件以进行提交呢?

在 Git 中显示冲突文件

发布时间:2023/04/09 浏览次数:139 分类:Git

本文讨论在 Git 中列出冲突文件的最简单和最干净的方法。 我们可以使用 git status 命令,但这很麻烦,尤其是当我们有大量不冲突的文件时。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便