step1 把远端svn 服务器上的repo历史记录导出到本地
在本地做如下操作
1> mkdir /svn
2> svnadmin create /svn/proj1
3> cd /svn/proj1/hooks
4> cp pre-revprop-change.tmpl pre-revprop-change
5> vi pre-revprop-change
REPOS="$1"
REV="$2"
USER="$3"
PROPNAME="$4"
ACTION="$5"
if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi
echo "Changing revision properties other than svn:log is prohibited" >&2
exit 1
原脚本的意思是如果修改的是svn:log属性,将允许修改,返回0;否则,不允许,返回1
我们要将它改为允许修改所有的属性,在脚本中直接返回0,新的脚本如下:
exit 0;
6> chmod a+x *
7> svnsync init file:///svn/proj1
https://cloudxy.googlecode.com/svn8> svnsync sync file:///svn/proj1
9> svnadmin dump /svn/proj1 > dump.clouldxy
step2 把导出的历史记录导入到新建立的svn repo
svnadmin load resp_path < dump.clouldxy
但是由于google的repo没有给用户这个权限,所以我们不能导入历史记录到google的repo,
但是可以到自己搭建的svn repo.