Subversion COPY / MOVE – File not found:transaction'XXX-XX'

我试图在我的一个Subversion版本库中创build一个分支,并且一直运行到一个错误。 不pipe做什么,我总是得到以下几点:

找不到文件:事务'3062-2e6',path'/ Software / XXXXXX / branches / testbranch'

我注意到上面消息中'3063-3e6'的第一部分是版本库中最后一次成功提交的版本。 我的Apache日志不能提供更多的信息:

[Wed Nov 24 14:10:38 2010] [error] [client xxxx] Could not MOVE/COPY /svn/p070361/!svn/bc/3049/Software/SXXXXXX/trunk. [404, #0] [Wed Nov 24 14:10:38 2010] [error] [client xxxx] Unable to make a filesystem copy. [404, #160013] [Wed Nov 24 14:10:38 2010] [error] [client xxxx] File not found: transaction '3059-2e2', path '/Software/XXXXXX/branches/testbranch' [404, #160013] 

这一切都发生在一个服务器上有一个nginx前端代理Apache的颠覆位。 其他存储库能够正常分支,我可以使用file:///从服务器上的命令行上创build分支。 此存储库上的权限与其他存储库和磁盘空间匹配不成问题。

  • 如何跟踪和parsing“无法加载到服务器:undefined symbol”在apache2
  • svn和svn + ssh的颠覆path差异
  • 在RHEL5 / CentOS系统上将svnserve设置为服务
  • 使用Windows身份validation处理Subversion服务器中的用户名更改
  • 运行在VPS上的Subversion服务器非常慢:如何诊断?
  • 如何限制login尝试Subversion?
  • 3 Solutions collect form web for “Subversion COPY / MOVE – File not found:transaction'XXX-XX'”

    可能你的svn结构没有“Software / XXXXXX / branches”目录,它必须存在才能在这里创build“testbranch”。 你应该手动创build这个目录(“分支”),然后做一个分支。

    如果目标path上的子目录不存在,则可能会出现无用的错误消息。 虽然你可以手动创build它们(使用svn mkdir ),但使用--parents选项会更容易。

      svn cp ^/trunk/bigproject ^/branches/experimental/bigproject -m 'test branch' 

    如果branchesexperimental不存在,则命令将失败。 这应该工作:

      svn cp --parents ^/trunk/bigproject ^/branches/experimental/bigproject -m 'test branch' 

    我知道这不是你的问题的直接答案,但如果你想有效地与分支机构合作,你应该考虑使用其他版本控制系统,如git,mercurial或bazzar。

    或者,如果你不想完全迁移,你可以使用git-svn作为你的svn仓库的“前端”,我build议你阅读这个以了解更多有关git-svn的信息。

    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.