我需要知道这两个补丁是否实际上是相同的。
我有一个旧的补丁文件和一个使用Unix diff命令创建的新的补丁文件。只是通过diff命令比较这些补丁会因为创建补丁时的时间戳而导致差异。
是否有一种方法(使用diff?)可以可靠地告诉我这两个补丁是否实际上是相同的?
我需要知道这两个补丁是否实际上是相同的。
我有一个旧的补丁文件和一个使用Unix diff命令创建的新的补丁文件。只是通过diff命令比较这些补丁会因为创建补丁时的时间戳而导致差异。
是否有一种方法(使用diff?)可以可靠地告诉我这两个补丁是否实际上是相同的?
使用来自patchutils的interdiff工具。
filterdiff --strip=[n]
很有用,可以从你的补丁中删除路径中的前导组件。 - ephemientsvn diff
命令,这时就会得到两个不同的差异。你所指出的“如果两个补丁对输入文件产生相同的效果,则这两个补丁是相同的”这一点是很有道理的,但问题是我们如何确定这一点呢? - dimo414你可以尝试使用Beyond Compare。
它可以配置为将一个或两个文件中的字符串替换为其他内容,然后在底层执行此操作。屏幕上的文件仍然看起来像存在于磁盘上,但差异是根据处理后的文件计算的。
通过这种方式,您可以将其配置为更改所有具有类似时间戳格式的文本为两个文件中共同的内容,然后只比较其他内容。
在Windows客户端中,要更改这些设置,在工具栏中有一个带有小人、躯干和头部符号的按钮,在打开的对话框中,有一个替换选项卡。