您的位置:首页 > 其它

Ubuntu Server 12.04 安装 SVN 并迁移 Virtual SVN数据

2013-05-21 02:08 423 查看
参考:http://cssor.com/ubuntu-server-svn.html,迁移方式不同

1、安装apache

sudo apt-get install apache2


2、安装svn和连接库

sudo apt-get install subversion
sudo apt-get install libapache2-svn


3、增加svn用户组,用于管理svn,并加入到www-data的apache组:
sudo addgroup subversion
sudo usermod -G subversion -a www-data


4、创建svn仓库文件,并初始化一个测试用途的仓库(在后面迁移时会用到)

# 一般可以将项目仓库建立到/home/svn目录
# 假设项目名为temproj,先建立空目录
$ sudo mkdir /home/svn
$ cd /home/svn
$ sudo mkdir temproj
$ sudo chown -R root:subversion temproj

#创建为svn项目,使用以下命令
$ sudo svnadmin create /home/svn/temproj
# 然后才赋予组成员对所有新加入文件仓库的文件拥有相应的权限:
# 如果命令顺序搞错,可能会报错,请参照官方wiki
$ sudo chmod -R g+rws temproj


5、配置Apache。

# 在安装了libapache2-svn时会自动生成该文件
$ sudo vi /etc/apache2/mods-available/dav_svn.conf

<Location /svn>  #/svn表示http://hostname/svn/
DAV svn
SVNParentPath /home/svn #配置仓库父目录
AuthType Basic
AuthName "Tebs Svn Server"
AuthUserFile /home/svn/htpasswd  #svn用户文件,便于迁移用户,直接将名称改为和virtual svn的命名一样
AuthzSVNAccessFile /home/svn/authz #授权访问文件
Require valid-user
</Location>


因为用到了授权模块,所以还需要配置验证模块

sudo vi /etc/apache2/mods-available/dav.load


#在最后加入
LoadModule authz_svn_module /usr/lib/apache2/modules/mod_authz_svn.so


6、将Virtual SVN仓库目录下的文件都拷贝出来,并把htpasswd文件以及authz文件格式转换为unix格式,通过winscp或其他工具,上传到/home/svn目录下

7、将生成的temproj目录拷贝到windows中,并复制多个副本后,删除副本中的db目录。

8、将Virtual SVN仓库目录中的项目的db文件夹,拷贝到第7步生成的目录中。并用temproj\db\中的fsfs.conf替换到其他所有目录的相同位置。

9、将调整完的仓库目录,上传到/home/svn目录下。

10、上传完了之后,集体更改下用户组,并授权

cd /home/svn
sudo chgrp -R subversion .
sudo chmod -R g+rws .


11、最后重启apache

sudo service apache2 restart


至此,大功告成。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: