颠覆升级1.6 - > 1.7钩子基础设施不兼容

时间:2012-09-18 15:33:50

标签: linux svn hook upgrade svn-hooks

我要将公司的subversion服务器从1.6版升级到1.7版。服务器在linux(Ubuntu AFAIK)上运行。

我已经阅读了所有这些内容:

Subversion 1.7 release notes

我也读了这些帖子:

subversion-client-version-confusion
how-to-upgrade-svn-server-from-1-6-to-1-7

此时此刻,我知道如何执行此操作。这不是什么大不了的事。我最关心的是当前的钩子基础设施。 bash和perl中有几个脚本。

至于现在,我发现没有关于钩子基础设施变化的信息,但也许我错过了一些已知的问题?有什么可以反对我应该知道的升级吗?

PS:Try and see what comes方法绝对不可用。我希望升级尽可能流畅。存储库用户甚至不应该注意到任何更改。我不能让自己在这件事上失败。

3 个答案:

答案 0 :(得分:1)

  

试着看看哪种方法绝对不可用......

是的,尝试看看有什么方法可用。您构建Subversion 1.6环境的副本,进行Subversion 1.7更改,并进行测试直到一切正确。

除非您复制并测试,否则我看不出如何实现安静升级的目标。

答案 1 :(得分:1)

Subversion兼容性保证了你的钩子脚本在1.6中与1.7中的完全相同。在1.7(以及将来的版本)中,可以将更多参数传递给脚本,但旧参数仍然与旧行为相匹配。因此,如果您像模板一样创建脚本,要忽略“额外”参数,您应该看不出差异。

Subversion 1.7自1.6以来没有更改存储库格式,因此您甚至可以(意外地)使用1.6中的svnlook来升级后访问存储库。

答案 2 :(得分:0)

升级已执行并成功完成。 Subversion服务器更新没有问题。 Hook的设计没有任何黑客或斜线,尊重规则和常识。这是冒险但有前途的并且有利可图(现在结账速度很快)。

为了完整起见:有一个连续的集中管理客户端升级。并且有一些问题,但不是关键和可预测的。转换后svn客户端1.6 - > 1.7.7工作副本格式已更改。每个现有的工作副本都必须手动升级(或擦除并再次检查干净)。

服务器升级是安全的。