忽略文件中的特定行

时间:2010-10-06 08:58:50

标签: mercurial

我的问题与this one非常相似。

我有Mercurial版本控制下的文件,每个文件都有一个字符串:

<modified-time>some time</modified-time>

此行已创建外部工具,工具会定期更改此行。我不想知道这一行的变化,并且当我做'diff','commit'和'status'命令时,我想忽略这一行的变化。

  1. 因此,如果一个文件只有一个更改,并且更改是该行,我需要在'hg status'命令的输出中跳过此文件。
  2. 如果文件在其他行中有其他更改,我需要在'hg status'命令的输出中获取此文件。
  3. 如果我提交文件,我需要提交所有更改。

1 个答案:

答案 0 :(得分:2)

(更新很抱歉误读了这个问题并误导了OP。)

如果所有文件都是由外部工具生成的,请改为跟踪源文件。

如果没有,并且您可以修改生成器,请使用date关键字作为捆绑的keyword extension

如果没有(OP的注释表明如此),你可以使用pre-* hooks忽略时间变化(当它是唯一的变化时)。但是,这很痛苦,因为你必须为每个看到文件差异的命令都有一个钩子。

或者正如OP的评论所建议的那样,当文件只有时间更改时,可以手动或自动恢复文件(在计时器上或订阅文件系统通知)。