深入比较文件、档案和目录
diffoscope的Python项目详细描述
扩散镜
Diffoscope将尝试了解文件或 目录不同。它将递归地解压各种各样的档案。 并将各种二进制格式转换为更可读的形式 比较一下。它可以比较两个tarball、iso图像或pdf,就像 很容易。
它可以通过错误代码编写脚本,并生成报告 与检测到的差异。报告可以是文本或HTML。 未选择报告类型时,diffoscope默认值 在标准输出上编写文本报告。
diffoscope最初是由“可重复构建”debian启动的。 项目,目前正在作为(更广泛的)“Reproducible Builds” initiative的一部分开发。意思是 能够快速理解同一个包的两个版本的原因 产生不同的输出。diffoscope以前叫debbindiff。
请参阅下面的COMMAND-LINE EXAMPLES部分 开始,以及所有命令行的更详细解释 选项。同样的信息也可以在 /usr/share/doc/diffoscope/README.rst或类似。
命令行示例
要深入比较两个文件并生成一个html报告,请运行以下命令:
$ bin/diffoscope --html output.html build1.changes build2.changes
如果没有差异,扩散镜将以0的形式退出,如果存在,则1。 是。
^ {EM1} $扩散镜
$ bin/diffoscope /nonexistent archive.zip
要获得所有可能的选项,请运行:
$ bin/diffoscope --help
如果您有足够的RAM,可以通过运行以下命令来提高性能:
$ TMPDIR=/run/shm bin/diffoscope very-big-input-0/ very-big-input-1/
默认情况下,这允许使用一半的RAM;对于更多内容,请添加如下内容:
tmpfs /run/shm tmpfs size=80% 0 0
到您的/etc/fstab;有关详细信息,请参见man mount。
外部依赖性
diffoscope需要python 3和pypi上可用的以下模块: libarchive-c, python-magic。
各种比较器依赖于可用的外部命令。到 获取它们的列表,请运行:
$ bin/diffoscope --list-tools
贡献者
Lunar、Reiner Herrmann、Chris Lamb、Mattia Rizzolo、Ximin Luo、Helmut Grohne, Holger Levsen、Daniel Kahn Gillmor、Paul Gevers、Peter de Wachter、Yasushi 舒吉,克莱门斯·朗,埃德·马斯特,约阿希姆·布雷特纳,迈克·麦克奎德。浸信会 达鲁辛,莱文特·波利亚克。
联系人
请报告bug并通过debian bug跟踪发送补丁 针对Diffoscope组件的系统: <;https://bugs.debian.org/src:diffoscope>;
有关更多说明,请参阅此目录中的CONTRIBUTING.rst。
加入用户和开发人员邮件列表: <;https://lists.reproducible-builds.org/listinfo/diffoscope>;
diffoscope网站位于<;https://diffoscope.org/>;
许可证
Diffoscope是免费软件:您可以重新分发和/或修改它 根据由 自由软件基金会,或者许可证的第3版,或者 (由您选择)任何更高版本。
散布漫射镜是为了让它有用, 但没有任何保证;甚至没有 适销性或适合某一特定目的的适销性。见 GNU通用公共许可证了解更多详细信息。
你应该收到GNU通用公共许可证的副本 以及扩散镜。如果没有,请参见<;https://www.gnu.org/licenses/>;。
另请参见
- <;https://diffoscope.org/>;
- <;https://wiki.debian.org/reproduilebuilds>;