大家好,我是ZhengN。
本次来给大家分享一款小巧好用的代码对比工具——Meld
。
Meld简介
Meld是一个 跨平台的
、可视化的、对比及合并工具。它提供文件和目录的双向和三向比较,并支持许多流行的版本控制系统。
Meld官网:
http://meldmerge.org/
Meld特点:
文件和目录的双向和三向比较。
文件比较随着你的输入而更新。
自动合并模式和对变更块的操作有助于使合并更容易。
可视化让你更容易比较你的文件。
支持
Git, Bazaar, Mercurial, Subversion
等。
Meld使用
1、Meld安装
(1)widows
![3bb6cfd7b9f4249ec2bfbfc9ef0d4606.png](https://i-blog.csdnimg.cn/blog_migrate/7a6962a3976a806324cdcf78d2776f34.png)
从上面给出的官网链接下载msi格式文件进行安装即可。
(2)Ubuntu
在Ubuntu下可以下载源码自己编译、安装。但其实没那个必要,输入如下命令即可安装:
sudo apt-get install meld
2、使用
通过Meld,我们可以很清楚的知道左右两边文件夹中文件的异同。可以通过选中/不选择上方的按钮列出相同的、新建的、已修改的文件:
![d355aac437eb1132901b37da04871bbc.png](https://i-blog.csdnimg.cn/blog_migrate/199d10f19765f336c546850bcd09aa72.png)
![787f6c0c5e73144b9ae3aaefe0297739.png](https://i-blog.csdnimg.cn/blog_migrate/f3b88de4fb39fe5acca8eebc3e0362f6.png)
![27640d4bb92e94ff45669f8329b98d9b.png](https://i-blog.csdnimg.cn/blog_migrate/e62fb6b2a4bb97e0607d24b471f9574e.png)
对比功能,同其它对比工具差不多一样,清晰地列出异同。
而meld独有地是其可以与git等版本控制系统使用。比如我们平时对比某个文件在工作区及版本库里的区别,我们是这样查看的:
![caa3b37c8ffc8f3b8f6f87939c1f0d13.png](https://i-blog.csdnimg.cn/blog_migrate/c6de98c28847a9a09f0f267b1e5205c7.png)
修改的地方比较少的情况下,这样也比较容易看出来。但一旦修改的地方比较多的情况,这么来看就比较头疼了。
我们可以对git进行一个简单的配置,让我们输入 git diff xxx
命令的时候调用meld工具来做比较:
![78512aa03b973d2b373e410238ff216d.png](https://i-blog.csdnimg.cn/blog_migrate/23bb3076972cf96e77d5ed58f94fc697.png)
下面我们来对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
![7dd8c4c8bbbb7a22478d8196073ef685.png](https://i-blog.csdnimg.cn/blog_migrate/97cb43e3e0d91fe41f5ebc4161ce0e03.png)
输入 gedit ~/meld.sh
命令在用户目录下新建一个名为 meld.sh
的脚本,并输入如下内容:
#!/bin/sh
meld $2 $5
增加可执行权限:
chmod u+x ~/meld.sh
这时候再执行如下命令往 .gitconfig
文件中添加配置内容:
git config --global diff.external ~/meld.sh
![b6e24a7c23059a61e4865d476ee7f9ee.png](https://i-blog.csdnimg.cn/blog_migrate/6083a0f54ac635058cfc833d18c5c76b.png)
这时候输入 git diff xxx
命令就是默认使用meld进行比较了。另外,在meld中打开我们的git版本管理得工程文件夹也是可以看到工作区中的修改的:
![5dd74702d5530afe6c1be1cfd751a99b.png](https://i-blog.csdnimg.cn/blog_migrate/9bf56a25add02ac66fa6a42586eb742e.png)
![d78f9c672d2fcfb7afb7b5f27b6661ec.png](https://i-blog.csdnimg.cn/blog_migrate/65809a67aacdddcc08214c719f8f872a.png)
![bfd361ddca629850e29696d932766f4c.png](https://i-blog.csdnimg.cn/blog_migrate/531a6445f5cd8347996bedd7c1edfddb.png)
以上就是本次关于meld的一些基本介绍。
免责声明:本文系网络转载,版权归原作者所有。如涉及作品版权问题,请与我们联系,我们将根据您提供的版权证明材料确认版权并支付稿酬或者删除内容