如何在linux系统搭建SVN服务器

手册/FAQ (594) 2016-04-19 09:29:05

 

 一、安装svn软件,有些云服务器会有安装svn服务器,有些没有。

           # yum install -y subversion                        //在线安装svn

           # svnserve --version                                  //检查svn版本

      二、创建svn版本库

           1、创建一个项目的版本目录

                # mkdir /home/svn                               //svn目录

           2、新建一个版本仓库
                # svnadmin create /home/svn/project   //project是项目名称

           3、添加用户,要添加SVN用户非常简单,只需在svn项目根目录下conf/passwd文件中添加形如username= password的条目就可以了。例如我添加了一个lixf的用户。

                [users]
                # harry = harryssecret
                # sally = sallyssecret
                lixf= 123456

           4、配置帐号权限,需要修改svn项目根目录下conf/authz文件的内容。

              首先是配置权限groups,如下配置了2个组admin和dev:

               [groups]

               # harry_and_sally = harry,sally
               # harry_sally_and_joe = harry,sally,&joe
               admin = lixf,  other

              然后配置具体的权限,

               [/]
               @admin = rw
               * = 

               [/doc]
               @cehua = rw
               @chengxu = r

           5、让上面的配置生效,需要修改svn项目根目录下conf/svnserve.conf文件的内容。将以下几个字段改成以下的值,并去掉前面的#号,使配置生效。

                # anon-access = none

                   # auth-access = write

                   # authz-db = /svrt/wuxia/conf/authz

                   # password-db = /svrt/wuxia/conf/passwd

           6、启动svn服务

               # svnserve -d -r /home/svn

           7、测试服务器

# svn co svn://127.0.0.1/project

           8、备份svn

全部备份:svnadmin dump svnprojpath [–revision version] > backup_file

                #svnadmin dump /home/svn/project > backup20150420.dump

                #svnadmin dump /home/svn/project –revision 999 > backup20150420.dump

增量备份:svnadmin dump svnprojpath –revision lastversion:thisversion –incremental > backup_file

#svnadmin dump /home/svn/project –revision 999:1055 –incremental > backup20150420.dump     

           9、还原svn
svnadmin load svnprojpath < backup_file

                #svnadmin load /home/svn/project < backup20150420.dump

THE END