我确实有一些被SCM替换的文本序列(在我的例子中是Perforce)。
我确实希望将BeyondCompare配置为将这些序列视为不重要的差异,以便能够在比较文件时忽略它们。
在我的例子中,它是关于Python源文件的,序列看起来像这样
# $Id: //depot/.../filename#7 $
# $DateTime: 2010/09/01 10:45:29 $
# $Author: username $
# $Change: 1234 $
有时这些序列可以是外部注释,但即使在这种情况下,我也希望能够忽略这些行,因为它们并没有真正更改。
发布于 2016-04-30 05:59:12
Beyond Compare的解析器目前(v3/v4)不支持嵌套元素,因此如果文本已经被分类为注释、字符串等,则不能使用文件格式语法将SCM序列标记为对特定文件类型不重要。
Beyond Compare 4.0添加了对在整个比较中将任意文本标记为不重要的支持,独立于语法。
+
按钮。\$(Id|DateTime|Author|Change):.*\$
发布于 2010-09-06 23:12:37
您需要定义一个新的语法元素(我们称其为"SCM"),并将其标记为不重要(see the tutorial here;选择"Basic“并确保选中"Regular Expression")。
语法元素应该是(如果我正确地解释了您的示例):
^.*\$(Id|DateTime|Author|Change):.*$
这将忽略任何包含$Id:
、$DateTime:
等的行。
如果只想忽略以# $...
开头的行,请使用
^\s*#s*\$(Id|DateTime|Author|Change):.*$
如果您只想忽略$
之间的内容(并将其他内容视为重要的内容),请使用
\$[^$\r\n]*\$
或
\$(Id|DateTime|Author|Change)[^$\r\n]*\$
这取决于你是否关心这些关键字。
https://stackoverflow.com/questions/3652301
复制相似问题