我们从初学者的角度(包括工具的安装部分)已经涵盖了Meld,我们还介绍了一些主要针对中级Meld用户的技巧/技巧。 如果你还记得,在初学者的教程中,我们提到了Meld可以比较这两个文件以及目录。 现在我们已经涵盖了文件比较,现在是讨论该工具的目录比较功能的时候了。
But before we do that it'd be worth sharing that all the instructions and examples presented in this tutorial have been tested on Ubuntu 14.04 and the Meld version we've used is 3.14.2.
使用Meld比较目录
要使用Meld比较两个目录,请启动该工具并选择“ 目录比较”选项。
然后选择要比较的目录:
一旦完成,点击比较按钮,你会看到,Meld将并排比较两个目录,就像工具在文件的情况下:
当然这些是目录,它们显示为并排的树。 如上图所示,您可以看到不同的颜色(不管是新文件还是更改的文件)都以不同的颜色突出显示。
根据Meld的官方文档,您在窗口的比较区域中看到的每个文件或文件夹都有自己的状态。 状态基本上显示了特定文件/文件夹与其他目录中的相应条目的不同。
从工具网站获取的下表 - 详细解释了Meld中的文件夹比较状态。
州 |
出现 |
含义 |
相同 |
普通字体 |
文件/文件夹在所有比较的文件夹中是相同的。 |
过滤时相同 |
斜体 |
这些文件在不同的文件夹中是不同的,但是一旦应用了文本过滤器,这些文件就变得相同。 |
改性 |
蓝色和大胆 |
这些文件在被比较的文件夹之间有所不同。 |
新 |
绿色大胆 |
此文件/文件夹存在于此文件夹中,但不在其他文件夹中。 |
失踪 |
通过中间的一条线将文本灰化 |
此文件夹中不存在此文件夹,但在其他其他文件夹中。 |
错误 |
明亮的红色与黄色背景和大胆 |
当比较此文件时,发生错误。 最常见的错误原因是文件权限(即,Meld不允许打开文件)和文件名编码错误。 |
默认情况下,Meld显示要比较的文件夹的所有内容,即使它们相同(这意味着它们之间没有区别)。 但是,您可以通过单击工具栏中的“ 相同 ”按钮来要求该工具不显示这些文件/目录 - 点击应该禁用此按钮。
例如,当我点击并禁用相同按钮时,这里是我们的目录比较:
所以你可以看到,现在只显示两个目录(新的和修改的文件)之间的区别。 同样,如果禁用“ 新建 ”按钮,则只显示已修改的文件。 所以基本上,您可以使用这些按钮来定制Meld在比较两个目录时显示哪些更改。
进行更改,您可以使用位于工具窗口中的显示区域上方的上下箭头键从一个更改跳转到另一个,并打开两个并行比较的文件,您可以双击任何文件的名称,或单击箭头旁边的比较按钮。
注1 :如果仔细观察,Meld窗口中显示区域的左侧和右侧有条形图。 这些酒吧基本上提供了“比较结果的简单的彩色总结”。 对于每个不同的文件或文件夹,这些条中有一个小的彩色部分。 您可以点击任何这样的部分直接跳到比较区域的那个地方。
注意 :尽管您可以随时打开文件,并按所需的方式合并更改,以防将所有更改合并到相应的文件/文件夹(这意味着要使相应的文件/文件夹完全相同)那么您可以使用“ 向左复制”和“ 右键复制”按钮:
例如,在左窗格中选择一个文件或文件夹,然后单击“ 右键 ”按钮,使右窗格中的相应条目完全相同。
继续,有一个“ 过滤器”下拉菜单位于“ 相同” ,“ 新建 ”和“ 修改”三个按钮旁边。 在这里,您可以选择/取消选择文件类型,以便在目录比较期间告诉Meld是否在显示区域中显示这些类型的文件/文件夹。 官方文档将此菜单中的条目解释为“ 执行文件夹比较时不会看到的文件名的模式”。
列表中的条目包括备份,操作系统特定的元数据,版本控制,二进制文件和媒体。
上述菜单也可以通过标题查看 - >文件过滤器访问 。 您可以在此菜单中添加新元素(如果需要,也可以删除现有的元素),方法是转到“ 编辑” - >“首选项” - >“文件过滤器” 。
要创建一个新的过滤器,您需要使用shell glob模式。 以下是Meld识别的shell glob字符列表:
通配符 |
火柴 |
* |
任何东西(即零个或多个字符) |
? |
一个字符 |
[abc] |
任何一个列出的字符 |
[!abc] |
除了列出的字符之外的任何东西 |
{猫狗} |
“猫”或“狗” |
最后,值得了解Meld的一个重要的一点是,文件名称的情况起着重要作用,因为默认情况下比较区分大小写。 这意味着,例如,文件 README , 自述文件 和 ReadMe 都将被工具视为不同的文件。
幸运的是,Meld还为您提供了关闭此功能的方法。 所有您需要做的是前往“ 视图 ”菜单,然后选择“ 忽略文件名大小写”选项。
结论
正如你所同意的,使用Meld的目录比较并不困难 - 实际上我会说这很简单。 可能需要时间学习的唯一领域是创建文件过滤器,但这并不是说您不应该学习它。 显然,这一切都取决于你的要求。
哦,是的,您甚至可以使用Meld比较三个目录,这是您选择要比较的目录时可以通过单击3路比较框访问的功能。 我们没有在这篇文章中讨论这个功能,但肯定会在我们将来的一篇文章中。