17

谁能告诉我 .hgignore 模式来跟踪目录中的一个特定文件并忽略其他所有内容?

出于显而易见的目的,我有一个包含“default.png”的“媒体”目录,该目录的其余部分将保存用户媒体。我们希望 hg 忽略媒体目录中除默认文件之外的所有内容。

4

4 回答 4

25

尝试:

syntax: regex
^media/.*

或(将其保留在默认的 glob 中并执行)

media/**

然后手动hg add media/default.png

在 mercurial(与 CVS 中不同)中,您可以添加与您的忽略模式匹配的文件,并且它们可以正常工作。因此,请广泛忽略hg add您想要跟踪的内容。

于 2009-11-05T03:55:14.303 回答
6
syntax: regex
^media/(?!default.png$)

几乎与 John Mee 的相同,但匹配到行尾,而不是任何以 default.png 开头的内容。

如果你想允许任何 .c 文件,但没有别的,你可以使用:

^media/(?!.+\.c$)
于 2012-03-07T17:46:28.277 回答
5

将其总结为 BKM(Best Known Method)

要么 hgignore 一切,然后 hg 添加回你想要跟踪的几个文件。

或使用诸如

syntax: regex
^path/(?!files-that-you-want-not-to-ignore$)

(我只是想在一个地方看到完整的答案。)

于 2012-06-03T20:06:42.460 回答
4

没关系,这似乎有效...

syntax: regex
^media/(?!default.png)
于 2009-11-05T03:17:31.277 回答