svnadmin: E125005: Invalid property value found in dumpstream

写这篇日志真是带着情绪。用中文搜索这个错误出来的内容完全千篇一律,根本就没有给出具体的解法。很怀疑那些转载的人是真的验证过的吗? 幸亏还有biying的英文搜索。

http://stackoverflow.com/questions/10279222/how-can-i-fix-the-svn-import-line-endings-error/10280315


出现这个错误的原因是工程师在输入日志时回车被记录的是(Control+M / ^M) 。在SVN老版本升级成1.6以上的新版本时特别常见。规避方案是使用svnsync

我要做的操作是把老的版本库迁移的新的高版本的服务器。所以以下操作是在新的服务器上执行的:


1. 创建版本库,忽略掉EOL错误

svnadmin create repo
svnadmin load repo < archive.svn --bypass-prop-validation

2.创建中间过渡的修复版本库

svnadmin create repo-fixed

svnsync 要求使用 repo-fixed/hooks/pre-revprop-change

#!/bin/sh
exit 0

pre-revprop-change程序的内容如上就可以。记住添加可执行权限

3.初始化svnsync的目标配置库,即repo-fixed:

svnsync init file:///path/to/repo-fixed file:///path/to/repo

4. 拷贝整个存储库

svnsync sync file:///path/to/repo-fixed

5.dump这个过渡库repo-fixed

svnadmin dump repo-fixed > archive-fixed.svn

你现在得到的 archive-fixed.svn, 是和 archive.svn 一样的库,只是 EOLs 的错误都已经被修复了. 之后在新的服务器上导入这个dump文件就可以了

(可选的) 你可以删除这个svnsync 产生的临时库:

rm -rf repo-fixed

如果你是本机的升级,导入新的dump文件可能会得到如下错误: Repository UUID does not match expected UUID. 你可以使用命令 svnadmin setuuid ... 来修改成原先的UUID。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章