Subversion:工作副本是旧的开发版本

时间:2012-11-06 23:18:18

标签: macos svn cornerstone

我正在开发OSX,我的一个Subversion工作副本刚刚开始为所有命令返回以下错误,但我的其他结帐工作正常。我在Brew安装的SVN二进制文件以及我的Cornerstone客户端上得到了相同的消息,但其他工作目录也没问题。

> svn update
svn: E155036: Please see the 'svn upgrade' command
svn: E155036: Working copy '/working_directory' is an old development version (format 12); to upgrade it, use a format 18 client, then use 'tools/dev/wc-ng/bump-to-19.py', then use the current client
> svn upgrade
svn: E155019: Can't upgrade '/working_directory' as it is not a pre-1.7 working copy directory
svn: E150000: Missing default entry

我的计算机上没有bump-to-19.py脚本(根据find / -type f -name bump-to-19.py),但我认为我能够在Apache repository上找到它。也就是说,我不熟悉它的作用或如何使用它。理想情况下,我可以避免签出此工作目录的新版本并手动合并我的所有(许多)更改。

我能找到的唯一信息与Netbeansjavahl有关,我也没有。

编辑:下载bump-to-19.py文件并使其可执行后,我在我的工作目录中尝试了它无济于事:

> ./bump-to-19.py working_directory/
error: format is 29 not 18: 'working_directory/'

4 个答案:

答案 0 :(得分:12)

虽然我无法弄清楚为什么我的工作目录已损坏,但我能够使用rsync来解决它 - 有一个选项C会忽略CVS / SVN文件和备份时的目录。我使用此选项进行了备份,再次检出项目,然后将备份复制回新的工作目录。 SVN再次感到高兴。

> rsync -arC working_directory working_directory_no_svn
> rm -rf working_directory
> svn co https://svn.example.com/project/trunk working_directory
> rsync -ar working_directory_no_svn working_directory

答案 1 :(得分:8)

我遇到了同样的问题,以下是我的解决方法:

  1. 删除顶层的.svn文件夹(rm -rf .svn)
  2. 从SVN(svn co ...)
  3. 再次检出软件
  4. 很高兴去!

答案 2 :(得分:5)

我知道这已经有一段时间了,但我找到了一个使用SVN给出的提示的解决方案......基本上使用升级命令,因为它说明。使用CMD,我进入了陷入困境的项目所在的工作区文件夹。让我们调用项目Project1。你调用命令:

“svn upgrade project1”

这解决了我的问题,正确的方式,没有涉及某种黑客或解决方法。

答案 3 :(得分:0)

我有一个类似的问题,我的svn版本是1.7.10,但是我的Eclipse版Subversion插件略长,我假设是1.6.something。

使用" rsync -arC working_directory archive_no_svn"命令是一个突破 - 至少现在我已经完成了我刚刚完成的同步时间的副本。

我尝试使用" svn co"但它是错误的版本,所以我只是使用Eclipse中的Subversion插件运行更新 - 这从存储库恢复了工作目录 - 几乎就是我所追求的,它是正确的版本。

将rsync恢复到正确的位置是一个技巧。 rsync似乎将工作文件夹放入存档位置,创建archive_location / working_directory / the-files。因此,使用以下方法将存档数据同步回到working_directory: rsync -ar archive_no_svn / working_directory。

现在我必须找到将Eclipse的Subversion插件升级到1.7