【问题标题】:SVN: Branch and reintegrate is not working with updated serverSVN:分支和重新集成不适用于更新的服务器
【发布时间】:2013-07-17 05:22:30
【问题描述】:

我正在使用最近升级到 1.7 版的 Subversion 服务器。我正在使用命令行 Linux 客户端 1.7.10。

我创建了一个这样的分支:

%: svn copy svn+ssh://acme.com/a/b/c/trunk svn+ssh://acme.com/a/b/c/branches/ovm_sequencer -m "Feature branch for ovm_sequencer"

经过几次编辑,我尝试重新集成到后备箱中,但遇到了问题:

%: svn merge --reintegrate '^/c/branches/ovm_sequencer'
svn: E160013: File not found: revision 1677, path '/c/branches/ovm_sequencer'

%: svn merge --reintegrate svn+ssh://acme.com/a/b/c/branches/ovm_sequencer
svn: E200007: Retrieval of mergeinfo unsupported by 'svn+ssh://acme.com/a/b/c/branches/ovm_sequencer'

出了什么问题,如何解决?

【问题讨论】:

标签: svn mergeinfo


【解决方案1】:

如果您使用 IntelliJ 13.1(Build #IU-135.475)并且遇到此问题并且您的服务器不是 1.7x,则只需转到您的 Subversion 首选项、演示选项卡,取消勾选“在历史记录和注释中显示合并源” .

【讨论】:

【解决方案2】:

两个音符:

  • ^ 在 SVN 路径中始终表示 repository-root,因此 ^/c/branches/ovm_sequencer 表示“/c/branches/ovm_sequencer”inside repository,而您(很可能)在 acme.com/a/b/c 路径中有存储库,并且 URL 必须是 ^/branches/ovm_sequencer

  • “不支持合并信息的检索”意味着关于您的网络|SVN 管理员的一个坏事实 - 他没有阅读更新软件的发行说明:为了在服务器端支持合并信息,除了更新 1.5 之前的软件Subversion 到 1.5 或更高版本,存储库也必须升级才能获得新格式。 Collabnet 上的主题(非常古老 - 从 2008 年开始)"mergeinfo not supported"

【讨论】:

  • 第一个注释很有帮助。我的网址实际上是^/b/c/branches/ovm_sequencer。一旦我掌握了正确的语法,mergeinfo 就起作用了! (我不确定管理员在此期间是否做了其他事情。)我怀疑 SVN 不理解如何解析两个带有 svn+ssh: 相关的 URL。
【解决方案3】:

升级远程存储库,而不是个人结帐(需要几秒钟):

$ svnadmin upgrade REPOS_PATH

如果您担心或无法远程访问转换 - 转储或同步存储库副本:

$ svnsync initialize --username=XXX --password=YYY $MIRROR $MASTER
$ svnsync synchronize $MASTER

或:

 $ svnadmin dump $MASTER  > svn.dump

【讨论】:

  • 我应该放什么来代替 REPOS_PATH?
猜你喜欢
  • 2010-11-16
  • 2011-08-21
  • 2011-08-14
  • 2012-06-17
  • 2012-04-10
  • 2015-10-22
  • 2011-11-13
  • 2010-12-18
  • 1970-01-01
相关资源
最近更新 更多