SVN: E155036:This client is too old to work with working copy…解决方法

这两天项目提交时候,虚拟机用SVN提交的时候,总是报如下提示:

svn: This client is too old to work with working copy ‘/opt/gforge/www/account’. You need
to get a newer Subversion client, or to downgrade this working copy.
See http://subversion.tigris.org/faq.html#working-copy-format-change
for details.


svn: E155036: Please see the 'svn upgrade' command

svn: E155036: The working copy at '/Users/xlh/moretv/helios/heliosVod'

is too old (format 29) to work with client version '1.9.3 (r1718519)' (expects format 31). You need to upgrade the working copy first.


其实有时候仔细看下报错提示还是很有用的,开始没有仔细看,试着升级SVN,其实是一个错误的方向。

正确的解决办法就是按照提示中的地址有FAQ的解释,可以解决这个问题。

访问地址:

http://subversion.tigris.org/faq.html#working-copy-format-change

官网已经明确说明地址转移了:

http://subversion.apache.org/faq.html#working-copy-format-change

原文如下:

Sometimes the working copy metadata format changes incompatibly between minor releases. For example, say you have a working copy created with Subversion 1.4.4, but one day you decide to try out Subversion 1.5.0. Afterwards, you attempt to switch back to 1.4.4, but it doesn’t work — it just gives the above error.

This is because 1.5.0 upgraded your working copy format to support some new features (in this case, changelists, the keep-local flag, and variable-depth directories). Although 1.4.4 doesn’t know anything about these new features, it can at least recognize that the working copy format has been upgraded to something higher than it can handle.

1.5.0 upgraded the working copy for a good reason: it realizes that 1.4.4 does not know about these new features, and that if 1.4.4 were to meddle with the working copy metadata now, important information might be lost, possibly causing corruption (see issue #2961, for example).

But this automatic upgrade behavior can be annoying, if you just want to try out a new release of Subversion without installing it permanently. For this reason, we distribute a script that can downgrade working copies when doing so is safe:

http://svn.collab.net/repos/svn/trunk/tools/client-side/change-svn-wc-format.py

Run that script with the “–help” option to see how to use it. As future versions of Subversion are released, we will try to keep this FAQ entry up-to-date with potential downgrade scenarios and their implications.

举例,在/home/mysvn文件夹下(工程目录下)建立好change-svn-wc-format.py文件,然后在该目录下执行:

./change-svn-wc-format.py –help

可以看到命令格式:

usage: change-svn-wc-format.py WC_PATH SVN_VERSION [--verbose] [--force] [--skip-unknown-format]
change-svn-wc-format.py –help

执行命令:

./change-svn-wc-format.py /mulu 1.x –skip-unknown-format 

说明:

上面的/mulu为文件路径,1.x为SVN当前版本号,只写2位版本号即可。
如版本为1.5.4,那么这里就写1.5就可以了。至此svn up可以正常执行了。


<span style="background-color: rgb(255, 255, 255);"><span style="font-size:18px;">其实,这肯定是升级过svn(Tortoise or svn终端),从1.6及以下版本升级过来的,这个错误提示就是告诉你要对本地文件夹进行一次upgrade操作。对版本库本地文件夹的顶层文件夹点右键,选择svn upgrade,或者eclipse插件 team->upgrade,升级完成后就OK了。</span></span>
<span style="background-color: rgb(255, 255, 255);"><span style="font-size:18px;">
1.6以下版本的SVN客户端会在每个文件夹下存放一个.svn隐藏文件夹,1.7以上版本就把这个.svn隐藏文件夹统一收到顶层文件夹下了,所以客户端升级到1.7 以上时必须对客户端文件夹进行一次upgrade</span></span>


你可能感兴趣的:(SVN: E155036:This client is too old to work with working copy…解决方法)