我有模式svn:ignore datasheets/*/*.pdf
它应该忽略当前根文件夹下多个“datasheet”目录下任意深度的所有pdf。
作为一个例子:说我有像这样的目录结构
Websites -web1 -dataSheets -AT -ignore.pdf -BE -NL -ignore.pdf -FR -ignore.pdf -ignore2.pdf -licenseAgreements -important.pdf -web2 -datasheets -etc
在这个例子中,模式需要忽略所有的ignore.pdf,而不是同时使用important.pdf。
显示的模式仍包含我的所有pdf文件。
我知道有很多类似的问题,但它们似乎都没有解决各种层次结构的问题。
答案 0 :(得分:2)
[U] nlike
global-ignores
选项,svn:ignore
属性中找到的模式仅适用于设置该属性的目录,而不适用于其任何子目录。
您需要递归地将忽略模式应用于每个目录,您可以使用--recursive
选项执行此操作。
答案 1 :(得分:1)
您应该使用 global-ignores 功能中的内置功能。忽略svn属性只能在单个级别上工作,是的,如果要添加新文件夹,你必须更改它们或重新添加它们。
因此,使用global-ignores的客户端功能,可以在本地配置中找到[第94行,查找“global-ignores”。
本地配置可在以下位置找到:
窗口:
%APPDATA%\subversion\config
* nix中
~/.subversion/config
答案 2 :(得分:0)
svn:ignore仅适用于已设置的目录。要忽略子目录下的文件,您必须递归地将此属性应用于子目录。 (-R开关)。
请试试这个:
svn propset svn:ignore "*pdf" -R datasheets
答案 3 :(得分:0)
我80%确定你不能做你想要的开箱即用。查看提交后挂钩 - 您可以评估要添加的文件的路径名,如果它符合您指定的条件,则拒绝它。