我正在开发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上找到它。也就是说,我不熟悉它的作用或如何使用它。理想情况下,我可以避免签出此工作目录的新版本并手动合并我的所有(许多)更改。
我能找到的唯一信息与Netbeans和javahl
有关,我也没有。
编辑:下载bump-to-19.py
文件并使其可执行后,我在我的工作目录中尝试了它无济于事:
> ./bump-to-19.py working_directory/
error: format is 29 not 18: 'working_directory/'
答案 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)
我遇到了同样的问题,以下是我的解决方法:
答案 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