对于测试数据的存档,我需要一个只允许添加文件的修订控制系统。禁止修改,重命名和任何其他更改。
这样就可以使用当前测试数据测试任何代码修订版本,并重现与以前相同的结果。
我们目前正在使用Subversion获取源代码。但是,测试数据可能是几百个文件,大约有200 GB的数据。我怀疑Subversion可以处理它。我不想将测试数据放入与代码相同的Subversion存档中,该代码只有几MB字节。
此外,Subversion似乎不是解决这个简单问题的正确工具。
如何使用仅添加规则在我的subversion存储库中创建目录?
我注意到,在结账后,测试数据的大小增加了一倍,因为有一个.svn目录,其中包含每个文件的副本。我可以避免浪费硬盘空间吗?有人只想使用数据但不想添加任何东西是不需要它的。他可以删除.svn,但在结账时仍需要大量的磁盘空间。
答案 0 :(得分:3)
要回答问题的第二部分,您可以执行svn导出,只获取一份数据。您将无法提交该文件夹,因为它不是工作副本。我有一个超过200 GB的存储库。到目前为止没问题。
答案 1 :(得分:2)
Subversion是这种情况的正确工具,处理200GB数据或事件多TB数据应该没有问题。请注意,除了“如何禁止修改”之外,你还没有在问题中说出任何“问题”,所以你不清楚你问的问题。
禁止修改但允许添加(我真的不明白你为什么要这样做,只是因为你使用了一个完全成熟且功能完备的版本控制来控制修改本身),使用path-based authorization和将其与pre-commit hook script结合使用。自己编写钩子脚本或使用用Python编写的svnperms
钩子脚本。
不要忘记阅读文档:SVNBook 1.8。