有人能告诉我.hgignore模式来跟踪目录中的一个特定文件并忽略其他所有文件吗?
我有一个“media”目录,其中包含“default.png”,出于显而易见的目的,目录的其余部分将保存用户媒体。我们希望hg忽略媒体目录中除默认文件之外的所有内容。
答案 0 :(得分:25)
尝试:
syntax: regex
^media/.*
或(将其保留在默认的glob中并执行)
media/**
然后手动hg add media/default.png
。
在mercurial中(与CVS不同),您可以添加与您的忽略模式匹配的文件,它们可以正常工作。因此,请大致忽略hg add
您要跟踪的内容。
答案 1 :(得分:6)
syntax: regex
^media/(?!default.png$)
与John Mee几乎相同,但匹配到行尾,而不是以default.png开头的任何内容。
如果你想允许任何.c文件,你可以使用:
^media/(?!.+\.c$)
答案 2 :(得分:5)
将其总结为BKM(最佳已知方法)
要么hgignore一切,然后hg添加你想要跟踪的几个文件。
或使用
等模式syntax: regex
^path/(?!files-that-you-want-not-to-ignore$)
(我只想在一个地方看到完整的答案。)
答案 3 :(得分:4)
没关系,这似乎有用......
syntax: regex
^media/(?!default.png)