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

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

参考:,迁移方式不同

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

至此,大功告成。。。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/a57ea55119fe68c76cefc56e738e5524.html