将 Meld 设置为 Git 的 Difftool 和 Mergetool
本文将讨论将 Meld 配置为 Git 的默认 diff
和 merge
工具。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
让我们简单看一下上面的参数。
-
$LOCAL
- 这是我们签出分支中的文件。 -
$REMOTE
- 这是我们试图合并的分支中的文件。 -
$MERGED
- 这是有合并冲突的文件。 -
$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 最初的 diff
和 merge
界面并不吸引人。但是,我们可以将 Git 配置为使用 Meld 作为默认的 GUI difftool
和 mergetool
。
你需要做的就是按照上述步骤更新你的 .gitconfig
文件。
相关文章
如何在 Windows 系统中卸载 git
发布时间:2023/04/09 浏览次数:223 分类: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 命令,但这很麻烦,尤其是当我们有大量不冲突的文件时。