我正在尝试将subversion服务器从1.6升级到1.9,我已经安装了mod_dav模块和svn二进制文件.svn 1.9的一大特色是FSFS文件系统格式7,它具有很多功能,可以启用我所有这些功能只运行命令svnadmin upgrade,它给出了以下输出
Path: repo1<br>
UUID: c67fd7ed-3808-3f41-9d25-6d8197ee6fd9<br>
Repository Format: 5<br>
Compatible With Version: 1.9.0<br>
Repository Capability: mergeinfo<br>
Filesystem Type: fsfs<br>
Filesystem Format: 7<br>
FSFS Sharded: yes<br>
FSFS Shard Size: 1000<br>
FSFS Shards Packed: 0/320<br>
FSFS Logical Addressing: no<br>
Configuration File: repo1/db/fsfs.conf<br>
根据发行说明,要启用所有格式7功能,FSFS逻辑寻址:是(以前不是),所以我的问题是如何将上述属性设置为是
答案 0 :(得分:0)
您可以在repo1/db/fsfs.conf
文件中更改内容寻址类型。但你真的需要吗?最有可能的是,你没有。 :)
Subversion存储库中有两种类型的修订内容寻址:物理寻址和逻辑寻址。
物理寻址是解决Subversion存储库中修订内容的最强大,最可靠的方法。
逻辑寻址是一种可选方法,用于解决存储库中的修订内容。 FSFS格式版本7(Subversion 1.9中的新增内容)引入了逻辑寻址。逻辑寻址为将来的Subversion版本中实现的功能添加了额外的转换层。
您可以在文章KB135: Understanding the Subversion repository types and formats中找到有关Subversion repo的属性和选项的更多信息。
答案 1 :(得分:0)
您可以静默地执行此操作,但希望您有足够的磁盘空间来进行转换。简单地,您可以创建新的存储库,然后应用新的配置。可以将其存储在原始存储库旁边。然后配置从原始到新存储库的镜像,然后调用svnmirror二进制文件。建议进行压缩。它会减慢操作速度,但是在我的实践中,它是用户看不见的。然后您可以压缩存储库,然后通过svnadmin pack进行备份将更加容易。之后,您可以详细测试新的存储库,并且......在很短的时间内关闭存储库,与新存储库交换并启动。记住,在切换过程中,应该将回购UID从旧复制到新。与复制钩一起做。如果一切正常,则可以将旧的回购转移到其他地方,最后销毁。您可以逐步使用所有存储库来完成此操作,不可用时间非常短。
有关逻辑寻址的一些信息。我认为与bahrep一样,逻辑寻址非常新鲜。会更好,它将由其他人而不是我们进行测试:)
我在fsfs中用我的仓库定义了一些选项,例如将仓库回购共享设置为true(减少重复),目录删除(相同)以及道具以及压缩。我测试了提交,签出,更新和合并,并且时间开销对我来说是不可见的。幸运的是,我节省了很多磁盘空间。