我无法进行 SVN 提交。我收到此错误:
org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)
如何修复?
我无法进行 SVN 提交。我收到此错误:
org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)
如何修复?
您必须将您的 subversion 客户端至少升级到 1.7。
使用命令行客户端,您必须通过发出以下命令手动升级您的工作副本格式svn upgrade
:
升级工作副本
Subversion 1.7 对工作副本格式进行了重大更改。在以前的 Subversion 版本中,当执行写入操作时,Subversion 会自动将工作副本更新为新格式。然而,Subversion 1.7 将使这成为一个手动步骤。在将 Subversion 1.7 与他们的工作副本一起使用之前,用户将需要运行一个新命令,
svn upgrade
以将元数据更新为新格式。此命令可能需要一段时间,对于某些用户来说,简单地签出新的工作副本可能更实用。
— Subversion 1.7 发行说明
TortoiseSVN 将使用下一个写入操作执行工作副本升级:
升级工作副本
Subversion 1.7 对工作副本格式进行了重大更改。在以前的版本中,Subversion 会在执行写入操作时自动将工作副本更新为新格式。然而,Subversion 1.7 将使这成为一个手动步骤。
在您可以使用 TortoiseSVN 1.7 的现有工作副本之前,您必须先升级格式。如果您右键单击旧的工作副本,TortoiseSVN 只会在上下文菜单中显示一个命令:升级工作副本。
— TortoiseSVN 1.7 发行说明
from eclipse, you can select on the project, right click->team->upgrade
在 MacOS 上:
svn升级
如果您刚刚在您的机器上升级到 SVN 1.7(就像我刚刚所做的那样),并且在您的 Eclipse 工作区中有很多需要升级的项目,您可以在基于 Unix 的系统上的终端窗口中执行以下操作:
cd [eclipse/workspace] # <- you supply the actual path here
for file in `find . -depth 2 -name "*.svn"`; do svn upgrade `dirname $file` ; done;
在谷歌上搜索了一下之后,我发现对于 Windows 用户来说似乎是等价的:
http://www.rqna.net/qna/mnrmqn-how-to-find-all-svn-working-copies-on-win-xp.html
请参阅页面中间的 Alexey Shcherbak 的答案。
此问题是由于您尝试编译的项目具有比您当前使用的旧 SVN 文件的项目。
您有两种解决方案来解决此问题
当有其他工作副本嵌套在您的工作副本中时,您还会收到有关需要升级工作副本的奇怪消息。我在 Symphony 项目中遇到了这个问题,一些框架文件夹是工作副本,我想在它们发布之前没有被正确清理。
在这种情况下,只需对 进行文件搜索.svn
,然后删除.svn
您不想要的文件夹(当然不要从根目录删除您的文件夹)。
如果您从 Netbeans (7.2+) 收到此错误,则表示您单独安装的 Subversion 版本高于 netbeans 中的版本。就我而言,Netbeans (v7.3.1) 有 SVN v1.7,我刚刚将我的 SVN 升级到 v1.8。
如果您查看Tools > Options > Miscellaneous (tab) > Versioning (tab) > Subversion (pane)
,设置首选客户端 = CLI,然后您可以设置安装的 SVN 的路径,这对我来说是C:\Program Files\TortoiseSVN\bin
。
可以在Netbeans Subversion 客户端常见问题解答中找到更多信息。
在 Visual Studio 中使用AnkhSVN,在解决方案资源管理器中的解决方案上下文菜单下还有一个“升级工作副本”选项(如果适用)。
升级到最新版本的 Tortoise-SVN 后,我需要先进行“升级”(而不是“更新”!)。
您可以升级到 Subversion 1.7。为了更新到 Subversion 1.7,您必须在 Xcode 5 或更高版本中启动现有项目。这将提示警告“<code>工作副本 ProjectName 应升级到 Subversion 1.7”(如下图所示)。
您应该选择“<code>Upgrade”按钮升级到 Subversion 1.7。这将需要一些时间。
如果您使用的是终端,那么您可以通过在项目目录中运行以下命令来升级到 Subversion 1.7: svn upgrade
请注意,一旦您拥有upgraded to Subversion 1.7 you cannot go back to Subversion 1.6.