Linux 搭建SVN版本服务

一、安装SVN服务端subversion

1. 安装subversion

yum install subversion

2. 查看安装版本,检查安装是否成功

svnserve --version

我的版本为    1.7.14

3. 查看安装位置

rpm -ql subversion

二、创建版本库

1、创建用于存放版本库的目录(此目录为所有项目的根目录,可以自己定义)

mkdir -p /usr/local/svnRepo

2、根据实际情况创建多个项目路径

mkdir -p /usr/local/svnRepo/project1

mkdir -p /usr/local/svnRepo/project2

3、创建多个svn版本库,与刚刚创建的项目路径一一对应

svnadmin create /usr/local/svnRepo/project1

svnadmin create /usr/local/svnRepo/project2

4、创建完后,每个版本库目录下会生成一些文件

Linux 搭建SVN版本服务_第1张图片

三、配置版本库(对于每个版本库根据实际情况分别进行配置)

在每个版本库中的conf目录如下:

其中

| - authz    权限控制文件

| - passwd    帐号密码文件

| - svnserve.conf    SVN服务配置文件

为了后续增加项目方便,创建公共的用户、权限配置文件,放到版本库公共路径/usr/local/svnRepo下;

1、创建公共的passwd文件,加入用户,格式就是“用户名=密码”,如:  

vim /usr/local/svnRepo/passwd
            [users]
            admin = 123
            test = 123
          2、创建公共的authz文件,加入用户权限,如:

vim /usr/local/svnRepo/authz
           [aliases]

[groups]
           admins = admin1, admin2

           [project1:/]
          @admins = rw
           * =

          [project2:/]
         @admins = rw
          * =
         创建的admins用户组中包含admin和test两个用户,而且这两个用户对该版本库根目录有读写权限(即最高权限),也可以           根据实际情况分别对不同的用户开放不同的路径权限;

        3、修改每个项目中conf路径下的svnserve.conf文件,对刚才公共文件的引用

         vim /usr/local/svnRepo/project1/conf/svnserve.conf
         anon-access = none #匿名用户不可读
         auth-access = write #授权用户可写
         password-db = /usr/local/svnRepo/passwd #使用公共文件作为账号文件
         authz-db = /usr/local/svnRepo/authz #使用公共文件作为权限文件
         realm = /usr/local/svnRepo/project1 # 认证空间名,版本库所在目录
         在project2中做同样的修改;

        在每次修改完配置后一定要记得重启svn

         linux下停止所有SVN 服务 killall svnerver   启动命令 svnserve -d -r   仓库地址

         还有一种方式是:

                 ps -A   只列出所有进程,并不显示环境变量。
                 ps -ef  列出所有进程,并显示环境变量,而且显示全格式。
                 关闭
                        查到服务的进程号:
                        ps -A | grep svn
                        1597 ?        00:00:00 svnserve
                        关闭进程:kill 1597
                启动
                        启动服务:(默认启动开启 3690端口)
                        svnserve -d -r  /home/beijing/soft/svn
                设置端口:
                       svnserve --listen-port 3691 -d -r /home/beijing/soft/svn
                       netstat -ntlp 端口是否开启
                       tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 4624/svnserve
                       tcp 0 0 10.88.107.91:3306 0.0.0.0:* LISTEN -
                       tcp 0 0 0.0.0.0:3691 0.0.0.0:* LISTEN 4621/svn

               查看启动结果:ps -ef|grep svn
               查看svn进程,结果如下:

                   root      1597     1  0 08:09 ?        00:00:00 svnserve -d -r /home/beijing/soft/svn --log-file /data/svnlog/svn.log
                   beijing   2650  2207  0 10:07 pts/4    00:00:00 grep --color=auto svn

         

四、启动并验证版本库

1、启动

如果在一台服务器上同时启动多个项目版本库,那么启动路径必须是所有项目仓库的根路径,比如:

/usr/local/svnRepo/project1
           /usr/local/svnRepo/project2
           对应

/usr/local/svnRepo/

启动命令

svnserve -d -r  /usr/local/svnRepo/

2、验证

(1)打开Windows SVN浏览器客户端

输入URL:

svn://SVN所在服务器IP地址/project1或svn://SVN所在服务器IP地址/project2

(2)或者在本地任一文件夹下右键 - “SVN Checkout...”

3、如果SVN服务器部署在云服务器上,需要打开3690端口
 

 

你可能感兴趣的:(Linux 搭建SVN版本服务)