【发布时间】:2010-12-29 05:20:44
【问题描述】:
是否有 diff 工具可以让我编写正则表达式以从差异中删除一行?
喜欢,看这两行:
this.Visible = true;
Visible = true;
我是否可以编写一个表达式,如果行差正好是this,则忽略差异。
我具体该怎么做?
我再举一个例子。就像System.Exception 和Exception 对我来说都是一样的,我不想在差异中展示它们。
【问题讨论】:
-
与其强迫 diff 工具做与它应该做的完全相反的事情(告诉你有什么不同),并依赖这样一个工具的可用性,为什么不使用像 sed 这样的简单工具还是 m4 先修补文件?
-
修补文件会改变内容,你将如何部分修补文件,而不是全部或系统被删除。我只想忽略那些导致任何差异的因素。
-
我会考虑的另一件事是,这只是一种不好的做法。 this.xxx 与 xxx 的含义不同。第一个获取当前对象的 xxx 属性,第二个获取最近范围内的 xxx。由于忽略差异,您可能会错过一个错误。这似乎是一个坏习惯。无论如何,祝您找到解决方案好运。
-
我想这取决于你为什么首先做差异。大概,这是您的源代码管理签入过程的一部分?如果是这样,那么只需借此机会解决两个文件之间的差异(无论您的组织编码标准是什么)并将文件签入 - 问题应该不再是问题。如果我的假设不正确,我深表歉意
-
@belugabob:好的,让我解释一下,首先我不在乎我是否删除了正确的“this”。与否,我有很多这样的差异,我想只关注重要的一个,“这个”。对我来说并不重要,因为大部分重构都是由我仅使用 CodeRush 完成的,所以我知道它们是正确的,但在检查之前我需要仔细检查我正在检查的内容。为什么这个功能很重要可能是 @987654321 @video 会解释更多,但这对我很重要。 “解决两个文件之间的差异”我不明白差异如何