1

是否可以在 mercurial 中使用 .hgignore 来忽略从 idl 文件生成的头文件?

我在 VS2008 中有一个非常大的项目,默认情况下,midl 工具从同一文件夹中的 .idl 文件生成 .h 文件并具有相同的名称。自然,我不希望生成的文件受到控制。如果同一文件夹中有 xxx.idl 文件,是否可以将 mercurial 配置为忽略 xxx.h 文件?

我的问题还有其他解决方案吗?为这 100 个项目重命名文件需要很长时间,这不是我真正想要考虑的选择......

4

2 回答 2

2

正如 stevevls 指出的那样,您可以忽略所有 .h 文件,然后手动添加您想要跟踪的 .h 文件(hg add覆盖忽略)。

另一种选择是将这样的东西放在你的.hg/hgrc

[ui]
ignore.generated = .hgignore-generated

然后手动或使用挂钩创建该文件,以便列出所有生成的 .h 文件。您可以选择跟踪或取消跟踪该文件。在 unix 上,这将自动创建该文件:

find . -name '*.idl' | sed 's/\.idl$/.h/ >| .hgignore-generated

我不知道如何在 Windows 上编写脚本,但可以想象 powershell 可以做到。

于 2011-05-24T17:34:12.583 回答
0

是的,这是可能的。.hgignore 非常灵活,可以接受 glob 和正则表达式。你可能会逃脱:

syntax:glob
*.h

有关详细信息,请参见此处:http ://www.selenic.com/mercurial/hgignore.5.html 。

于 2011-05-13T09:13:15.143 回答