如何将具有特定扩展名的文件添加到fossil存储库中?

时间:2016-03-11 01:35:03

标签: fossil

作为标题,我有几种类型的文件存储在一个文件夹(带有子文件夹)中,我使用Fossil来保存一个存储库(例如foo.R; foo.xls; foo.csv),我只想要我的R要添加到存储库中的文件。我只知道使用fossil add .添加所有文件,然后使用fossil delete *.csv删除我不需要的文件。

有更有效的方法吗?

2 个答案:

答案 0 :(得分:3)

除了Reimer Behrends'answer:在Windows命令行中,您可以使用recursive for loop

for /r . %F in (*.r) do @fossil add %F

将所有.r文件添加到存储库,包括子文件夹中的文件。 (如果您的文件都在同一个文件夹中,fossil add *.r会这样做。)

请注意,如果要在批处理或.cmd文件中使用此字符,则必须将百分比字符加倍(%%):

for /r . %%F in (*.r) do fossil add %%F

答案 1 :(得分:2)

没有直接方法将某些扩展列入白名单,但有一种方法可以将您不需要的扩展名列入黑名单。这可以通过fossil settings命令完成,该命令也可以缩写为fossil set。例如,要排除.xls.csv文件,您可以执行以下操作:

fossil set ignore-glob '*.xls,*.csv'

ignore-glob设置是一个变量,它将接受以逗号或换行符分隔的glob模式列表。这些内容将被fossil addfossil addremovefossil cleanfossil extra忽略。您可以使用fossil set ignore-glob来查询此变量的当前值。

替代方法(允许列入白名单)是明确指定要添加的文件。例如,如果您使用的是Unix,则可以执行以下操作:

fossil add $(find . -name '*.R')

仅添加您需要的文件。对于某些shell,fossil add **/*.R也可能有效,如果您没有任何子目录,fossil add *.R应该可以在任何地方使用。