我最近通过反向移植将 Debian Etch 上的 Subversion 包更新到了 1.5.1。我已完成我认为是所有适当步骤,但在尝试合并时,我无论如何也摆脱不了以下错误消息:
检索“.”不支持的合并信息
“。”并不重要,因为无论我是通过 SSH 连接到服务器还是通过 Windows 使用 TortoiseSVN,我都会收到相同的消息。
我将逐步向您介绍升级和测试的过程:
Subversion 的更新
在 /etc/apt/sources.list 中添加了以下行:
德布http://www.backports.org/debian etch-backports 主要贡献 非自由
然后跑了
apt-get -s -t etch-backports 安装 subversion
检查了 subversion 安装的版本
通过运行完成
svnadmin --version
并得到以下输出:
svnadmin,版本 1.5.1 (r32289)
编译于 2008 年 12 月 11 日,18:10:14
使用以下方法检查客户端
svn --version
并得到以下内容
svn,版本 1.5.1 (r32289)
编译于 2008 年 12 月 11 日,18:10:14
好的,到目前为止一切看起来都很好。
现在我只需要升级存储库。经过大量研究,最万无一失的方法似乎是转储存储库,然后再次加载。所以我做了以下事情:
svnadmin dump /var/svn/repo > repo.dump
rm -aR /var/svn/repo/*
svnadmin 创建 /var/svn/repo
svnadmin 加载 < repo.dump
一切似乎都运行良好。然后我通过查看以下内容来检查存储库是否已升级:/var/svn/repo/db/格式结果是:
3
布局分片 1000
这再次表明 Subversion 1.5 存储库一切看起来都很好。
现在我尝试使用 Debian 中的 Subversion 客户端进行合并:
svn 合并信息https://mysvn/repo。
我收到以下错误:
svn:“。”不支持检索合并信息
无论我在同一台服务器上使用 Debian shell 还是通过 TortoiseSVN 和 Windows 机器进行连接,我都会收到相同的错误消息。
如果我使用 Web 浏览器浏览存储库,底部的版本号显示为:
由 Subversion 版本 1.4.2 (r22196) 提供支持。
如果有帮助,创建日期修改器是2009-08-06 18:29
我就是搞不懂为什么我会收到这条消息,所以任何能给我指明正确方向的帮助都会非常感激。我发现的所有与此错误相关的论坛和邮件列表帖子都通过执行 svnadmin 升级解决了,尽管我实际上已经尝试过,但仍然没有成功。
提前致谢,
詹姆士。
答案1
您的服务器版本似乎太旧了(1.4.2)。您的客户端、svnadmin 和存储库至少都是 1.5,这很好,但我认为您的服务器本身也需要至少是 1.5 才能支持“merge --reintegrate”
答案2
是 mod_dav_svn 模块过期了。我通过运行以下命令修复了这个问题:
apt-get -t etch-backports 安装 libapache2-svn
感谢 Subversion 用户邮件列表对此的指出。
谢谢,
詹姆士。