我在我的应用程序中使用SVNKit。我有一个场景,其中在执行 svn 操作时应该忽略某些文件。即我需要为某些模式设置 svn:ignore 属性。
我如何使用 SVNKit 做到这一点?
您可以使用ISVNOptions类。
它有一个addIgnorePattern()
功能,应该允许您根据给定的模式忽略文件。
如果要忽略特定目录中的“忽略”,则必须svn:ignore
在其父目录上设置属性,而不是在文件本身上设置属性(因为被忽略该文件将永远不会添加到存储库中)。
File dir = file.getParentFile().getAbsoluteFile();
ourClientManager.getWCClient().doSetProperty(dir, SVNProperty.IGNORE,
file.getName(), false, false, null);
要忽略目录中的多个文件,svn:ignore
属性值应为每个被忽略的文件包含一行,例如:
a\n
b\n
*.bin
一旦设置了属性,提交目录以使新的属性值存储在存储库中。
参数列表是 (file, propName, propValue, force, recursive, IPropertyHandler)。
因此,如果您想递归地应用一个属性,只需将其第 5 个参数(递归)设置为 true。