分享一款小巧好用的代码对比工具
Posted 嵌入式大杂烩
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分享一款小巧好用的代码对比工具相关的知识,希望对你有一定的参考价值。
关注「Linux大陆」,选择「星标公众号」一起进步!
大家好,我是ZhengN。
本次来给大家分享一款小巧好用的代码对比工具——Meld
。
Meld简介
Meld是一个 跨平台的
、可视化的、对比及合并工具。它提供文件和目录的双向和三向比较,并支持许多流行的版本控制系统。
Meld官网:
http://meldmerge.org/
Meld特点:
文件和目录的双向和三向比较。
文件比较随着你的输入而更新。
自动合并模式和对变更块的操作有助于使合并更容易。
可视化让你更容易比较你的文件。
支持
Git, Bazaar, Mercurial, Subversion
等。
Meld使用
1、Meld安装
(1)widows
![](https://image.cha138.com/20211022/e71a7376dcf545f39263d2b27f6f1285.jpg)
从上面给出的官网链接下载msi格式文件进行安装即可。
(2)Ubuntu
在Ubuntu下可以下载源码自己编译、安装。但其实没那个必要,输入如下命令即可安装:
sudo apt-get install meld
2、使用
通过Meld,我们可以很清楚的知道左右两边文件夹中文件的异同。可以通过选中/不选择上方的按钮列出相同的、新建的、已修改的文件:
![](https://image.cha138.com/20211022/ccf720f66dda44f7bcba043ffdacd949.jpg)
![](https://image.cha138.com/20211022/f9b4d878ddc546268e4ccbce1a7cfc3c.jpg)
![](https://image.cha138.com/20211022/ffcbf5a9a5014f39b161043867bcfc8e.jpg)
对比功能,同其它对比工具差不多一样,清晰地列出异同。
而meld独有地是其可以与git等版本控制系统使用。比如我们平时对比某个文件在工作区及版本库里的区别,我们是这样查看的:
![](https://image.cha138.com/20211022/60823f3a8d64424da2cc9e5b75f8fcd4.jpg)
修改的地方比较少的情况下,这样也比较容易看出来。但一旦修改的地方比较多的情况,这么来看就比较头疼了。
我们可以对git进行一个简单的配置,让我们输入 git diff xxx
命令的时候调用meld工具来做比较:
![](https://image.cha138.com/20211022/6bf31d54f4fe4217a38e05dc1d747b57.jpg)
下面我们来对git进行配置。以下配置参考博客:
https://blog.csdn.net/dong_beijing/article/details/83834217
输入 gedit ~/.gitconfig
打开git配置文件,加入如下内容:
[merge]
tool = meld
conflictstyle = diff3
[mergetool "meld"]
cmd = meld $LOCAL $BASE $REMOTE --output=$MERGED --auto-merge
![](https://image.cha138.com/20211022/ae4e444e17154538a0536ed9d38c4b30.jpg)
输入 gedit ~/meld.sh
命令在用户目录下新建一个名为 meld.sh
的脚本,并输入如下内容:
#!/bin/sh
meld $2 $5
增加可执行权限:
chmod u+x ~/meld.sh
这时候再执行如下命令往 .gitconfig
文件中添加配置内容:
git config --global diff.external ~/meld.sh
![](https://image.cha138.com/20211022/3483ceb15d6a46309f00449b26911a3a.jpg)
这时候输入 git diff xxx
命令就是默认使用meld进行比较了。另外,在meld中打开我们的git版本管理得工程文件夹也是可以看到工作区中的修改的:
![](https://image.cha138.com/20211022/7f54b6e5780b40fa83b78e9c968033a2.jpg)
![](https://image.cha138.com/20211022/6e8b54b826544a438c83774da9bc4f50.jpg)
![](https://image.cha138.com/20211022/02f9eb8229374bd899a8597e44fc98f9.jpg)
以上就是本次关于meld的一些基本介绍。
往期推荐:
以上是关于分享一款小巧好用的代码对比工具的主要内容,如果未能解决你的问题,请参考以下文章