实际上,我有2个版本的文件夹,其中包含多个文件夹和文件,最大深度为6,现在我不确定我对哪个文件和哪个版本进行了哪些更改。

用例


我需要一个工具,该工具将列出所有不匹配的文件
然后单击更改的文件,它显示所做的更改类似于svn中的Diff

我可以通过独立的比较工具手动完成第二个用例,但找不到符合第一个用例的软件。

#1 楼

我建议您使用Total Commander(如果适用于Windows)。

首先进行目录比较,以快速检查哪些文件/文件夹丢失/更新/不同:



通过文件复制/移动操作,您可以使完整的文件同步。

然后进行文件内容比较,并在编辑模式下可以复制其他文件文件之间的片段:


您可以使用功能齐全的共享软件版本,或者$ 40.- /€32.-将为您提供终身注册。
我之所以住在这个程序中,是因为它具有许多其他功能。

评论


在Total Commander网页上:“ Windows Total Commander是一个共享软件(演示版本)程序。这意味着您可以测试30天。测试该程序之后,您必须订购完整版本或删除它从您的硬盘上的程序。”

– JerryD
18年10月2日在16:30

@JerryD我忽略了这一点,对不起。我刚刚付了钱。

–user416
18年10月2日在18:11

#2 楼

我推荐KDiff3,可用于Windows,OS X和Unix。它是免费提供的(GPLv2)。其比较功能非常出色!下面是比较两个Linux内核源代码目录的屏幕截图:



屏幕快照中的文件视图同时显示通用文件和不同文件,但过滤起来很简单并只显示一个目录中存在的不同文件。

#3 楼

在Unix,OS X和Windows上,您可以使用Meld:


免费和开源
文件和目录的双向比较和三向比较
文件比较键入时更新
自动合并模式和对更改块的操作使合并变得更容易
可视化使比较文件变得更容易
支持Git,Bazaar,Mercurial,Subversion等。
/>






#4 楼

假设Windows

WinMerge是一个很棒的差异程序,并且可以做到这一点。 WinMerge是免费的而且是开源的。



用例1:只需在比较对话框中选择两个文件夹,然后按comparison result排序(例如,参见屏幕截图)。

用例2:只需双击那里的任何文件即可查看该特定文件的差异-或在“比较”对话框中选择两个文件,它将对其进行比较。




评论


不幸的是,WinMerge不显示文件夹是否包含差异(递归)。或者至少我还没有找到任何方法来表明这一点。此问题使WinMerge难以在6层层次结构中用于“从树到叶子”的比较。

–尼古拉斯·拉乌尔(Nicolas Raoul)♦
14年6月19日在9:12

#5 楼

在Linux上,您可以使用Krusader:


免费且开源
列出所有不匹配的文件
可以通过外部diff程序按内容比较文件Kompare,KDiff3或xxdiff。





评论


看起来像是Total Commander的“灵感” :)

– miroxlav
14年4月16日在18:12

#6 楼

我建议使用Total Commander,它在菜单Commands> Synchronize Dirs...中具有特殊的子树比较工具:



我正在使用它比较/同步包含100,000个文件的项目。 8,000个目录。

复选框:



不对称


禁用=左右两侧相等
=左侧是源,右侧是目标,因此可以生成右侧的文件删除(请参见演示图像上带有红色X的行)


子目录-还要进行比较子目录
按内容-还按内容比较文件(逐字节)
忽略日期-仅按名称和大小比较文件(如果选中,则按内容比较)

其他控件:


-用于显示/隐藏项目类别的切换按钮
主列表的中间列–每个文件的同步可以单独定制。 “同步”按钮将根据在此列中所做的选择开始同步。

请注意,在我的演示图像中,左窗格中有一个ZIP存档。

在主列表中,每个可以单独评估一行:


F3-显示左文件
Shift + F3-显示右文件
Ctrl + F3-运行逐行比较工具(包括编辑器)。它的快照可能包含在另一个答案中。


#7 楼

我遇到了类似的问题,并遇到了有关如何从Windows命令提示符下区分两个文件夹的文章。它使用Windows Vista及更高版本中包含的Microsoft RoboCopy实用程序。它适用于本地文件夹和网络文件共享。

命令是:


ROBOCOPY“ \ FileShare \ SourceFolder”“ \ FileShare \ ComparisonFolder” / e / l / ns / njs / njh / fp /log:reconcile.txt


本文实际上建议您还使用/ ndl开关来减小日志文件的大小,但是它会发出警告/ ndl开关处于活动状态时...




除非存在至少一个不匹配的文件或源文件,否则不会记录仅存在于源或目标上的文件夹在目标上丢失。
无论内容如何,​​仅存在于目标上的文件夹都不会记录。




请注意,所有文件和文件夹都与或不使用/ ndl但记录的是什么变化。

Microsoft的网页介绍了RoboCopy语法和选项,位于:
https://technet.microsoft.com/zh-cn /library/cc733145.aspx