是否有可能根据 svn 版本文件的属性从存储库中签出?那将是一种特殊的稀疏结帐。例如,仅签出带有“svn:corelib”==“yes”的文件。
或者只是检查整个回购并稍后删除不需要的文件的唯一机会?例如,使用脚本为每个文件提取带有“svn propget svn:corelib”的道具并检查数据?
(第三个选项当然只是将 corelib-files 和 noncorelib-files 的 repos 分开。)
是否有可能根据 svn 版本文件的属性从存储库中签出?那将是一种特殊的稀疏结帐。例如,仅签出带有“svn:corelib”==“yes”的文件。
或者只是检查整个回购并稍后删除不需要的文件的唯一机会?例如,使用脚本为每个文件提取带有“svn propget svn:corelib”的道具并检查数据?
(第三个选项当然只是将 corelib-files 和 noncorelib-files 的 repos 分开。)
通过阅读http://svnbook.red-bean.com/en/1.5/svn.advanced.props.html,Subversion 似乎无法做到这一点:-( 您可能必须搜索手动存储库以获取具有属性集的列表,然后将其签出。
如果将 corelib 和非 corelib 文件放在不同的存储库中,甚至是同一存储库中的不同目录树对您来说是合理的,那几乎可以肯定是最好和最有效的解决方案。
您可以在不签出的情况下查询文件的属性。您可以在收集要签出的文件名的 shell 脚本中使用此功能。
上市属性:
svn proplist http://repo/path/to/file
获取特定属性的值:
svn propget svn:corelib http://repo/path/to/file
如果您propget
使用的文件没有请求的属性,您将得到一个空字符串。