如何使用 .hgignore 仅排除二进制文件?
我有一个目录 data-files-dir
,其中包含具有以下扩展名的文件:
# binary types
.dat
.dat.gz
.csv
# script files
.bat
.yaml
我想排除包含我不想存储在 Mercurial 中的 GB 数据的二进制文件。
但我想让 Mercurial 录制脚本文件。
到目前为止,我能做的最好的事情就是使用这个 .hgignore
文件排除整个目录:
syntax: glob
data-files-dir/**
但我无法再从 Mercurial 中排除这些脚本文件。
如何让 Mercurial 跟踪脚本文件而不是二进制文件?
I have a directory data-files-dir
containing files with the following extensions:
# binary types
.dat
.dat.gz
.csv
# script files
.bat
.yaml
I want to exclude the binary files which contain gigabytes worth of data that I don't want stored in Mercurial.
But I want to have the script files recorded by Mercurial.
So far the best I could do is the exclude the entire directory using this .hgignore
file:
syntax: glob
data-files-dir/**
But I can no longer afford to exclude these script files from Mercurial.
How do I have Mercurial track the script files but not the binary files?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
修改hgignore中指定的示例,下面的不起作用吗?
Modifying the example specified in hgignore, does the following not work?
您可以使用正则表达式语法忽略这些文件,以使其更加简洁。以下示例
.hgignore
文件同时使用glob
和regexp
语法。 glob 条目忽略 bin 和 obj 目录下的所有内容。regexp
项会忽略data-files-dir
下以括号中列出的扩展名结尾的所有文件。You can ignore the files using regexp syntax to be more concise. The following example
.hgignore
file uses bothglob
andregexp
syntax. The glob entries ignore everything under thebin
andobj
directories. Theregexp
item ignores all files under thedata-files-dir
that end with the extensions listed in the parenthesis.如果您希望忽略的文件都在
data-files-dir
目录中,那么您可以将以下内容添加到.hgignore
文件中:这将忽略这些文件扩展名仅在
data-files-dir
目录中。我刚刚尝试了一个快速测试,它似乎对我有用:因此,任何
.dat
、.gz
或.csv
文件都会被忽略以上在我的 .hgignore 文件中。If the files you wish to ignore are all in the
data-files-dir
directory, then you can add the following to your.hgignore
file:This will ignore those file extensions only in the
data-files-dir
directory. I just tried a quick test, and it seems to work for me:So any
.dat
,.gz
or.csv
file is ignored with the above in my.hgignore
file.