2

我正在尝试hg purge在我的存储库中执行一个,但我需要node_modules从该清除中排除一些目录(例如,和其他东西)。

基本上,我想保留(不删除)这些目录,以避免每次都再次下载它们。

这是关于我的构建过程,它hg purge在开始新的构建过程之前运行,因此会删除所有被忽略的内容(列在 中.hgignore)。我不希望这种情况发生在目录node_modules和其他一些目录上。

有没有办法告诉 Mercurial 不要对某些目录进行清除?

4

1 回答 1

8

使用-X/--exclude命令行开关(可以多次指定):

hg purge -X 'glob:node_modules/**.js'

上述模式忽略node_modules目录中的所有 Javascript 文件,包括子目录中的文件。用于/**匹配目录下的所有内容:

hg purge -X 'glob:node_modules/**'

请参阅 Mercurial 指南中的文件名和模式匹配章节;那里描述的模式都可以在这里使用。

在测试您的模式时,请确保您使用--print命令行选项 to hg purge,然后它将只打印将删除哪些文件。这有助于迭代您的模式,您不必在尝试之间不断地重新设置您的文件。

于 2016-01-28T12:14:45.253 回答