39

我想将我的TortoiseSVN安装升级到版本1.7。我们有一个运行SVN 1.6版本库的VisualSVN服务器。TortoiseSVN 1.7能否针对SVN 1.6存储库正常工作?

我是否需要将存储库升级到1.7才能更新我的客户端,或者是否向后兼容TortoiseSVN?

我知道在从TortoiseSVN 1.6升级到1.7时,我需要将我的工作副本转换为新格式,但在提交期间它是否具有一些逻辑来查看服务器版本并进行适当调整?

回答

28

release notes

以前的客户端和服务器1.7的服务器和客户端

透明地进行互操作......

颠覆1.7服务器使用相同的存储库格式颠覆 1.6。因此,它可以无缝升级,并在不改变 磁盘上的存储库

有没有必要做任何的格式1.6.x版和1.7.x服务器之间的降级,你的工作副本将升级,并且仍然可以与1.6服务器通信

+10

注意:TortoiseSVN将更新工作副本格式,这将为较老的客户端创建问题。如果您有一个使用多个不同客户端访问相同工作副本的环境,这只是一个问题。例如。如果您从TortoisSVN和仅支持1.6工作副本格式的IDE(例如PHPStorm)访问工作副本。 –

+0

@ArtemGoutsoul您可以在SVN 1上为客户使用单独的WC。6 – bahrep

2

它在1.6服务器(我的情况是1.6.17)下工作得很好。

9

是的,它会的。

如果您在同一工作副本上使用不同版本的客户端(即检出目录),则可能会遇到问题。另外,如果您使用新服务器的旧客户端,则可能无法使用某些新的服务器功能。

但是,新的SVN客户端向下兼容旧服务器,除了一些新功能。所以在服务器1.6上使用TortoiseSVN 1.7应该没问题。

查看SVN网站上的compatibility matrix

+8

不幸的是兼容性矩阵不处理1.7 – CharlesB

0

轶事时间:

  • 服务器版本。 1.6.17
  • 客户端A的Subversion 1.8.9(WIN,龟)
  • 客户端B版本1.6.17(r1128011)在客户端B(Linux)的

- create branch_x with lots of files 
- commit 
- svn mv branch_x branch_xnew 
- log shows A branch_xnew, then thousands of D for each file in branch_x 
- commit 
- fails saying that branch_x is out of date. 

- out of desperation, revert --depth inifity... same 
- more desperation, checkout a clean working copy, svn mv, commit, fails "branch_x is out of date". 

上客户端A:svn mv,提交,完成。 svn在客户端B上显示没有冲突。全做完了。

+0

这是如何回答这个问题的? – crashmstr

+0

@crashmstr问题有“是TortoiseSVN向后兼容?” ...这给出了一个很好的提示,那就是“YMMV”的答案... – gcb