Loading

CentOS6.8部署SVN

第1章 安装svn服务

1.1 准备操作系统并查看系统环境

[root@localhost ~]# cat /etc/redhat-release 
CentOS release 6.8 (Final)
[root@localhost ~]# uname -a
Linux localhost 2.6.32-642.el6.x86_64 #1 SMP Tue May 10 17:27:01 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost ~]# hostname -I
192.168.1.111

注意!

关闭防火墙或者打开3690端口

1.2 安装svn(subversion)

1)首先检查svn软件程序是否已安装:

[root@localhost ~]# rpm -qa subversion
subversion-1.6.11-9.el6_4.x86_64

2)如果没有如上结果,则需要执行下面命令安装

[root@localhost ~]# yum install -y subversion
[root@localhost ~]# rpm -qa subversion
subversion-1.6.11-15.el6_7.x86_64

1.3 创建svn目录

建立svn版本库数据存储根目录(svndata)及用户、密码权限目录(svnpasswd)

[root@localhost ~]# mkdir -p /data/svndata #==>SVN数据存储根目录
[root@localhost ~]# mkdir -p /data/svnpasswd #==>SVN用户、密码权限目录

1.4 启动svn服务并查看

[root@localhost ~]# svnserve -d -r /data/svndata/     #==>指定SVN根目录
[root@localhost ~]# netstat -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN      1486/svnserve       
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1398/sshd   

第2章 创建新的项目版本库

2.1 创建新项目

创建一个新的Subversion项目syavingc,其实,类似syavingc这样的项目可以创建多个,每个项目对应不同的代码,这里只是以创建一个项目为例演示:

[root@localhost ~]# svnadmin create /data/svndata/syavingc

2.2 查看svn项目syavingc目录

[root@localhost syavingc]# pwd
/data/svndata/syavingc
[root@localhost syavingc]# ll
total 24
drwxr-xr-x. 2 root root 4096 Oct 13 17:41 conf #配置文件目录
drwxr-sr-x. 6 root root 4096 Oct 13 17:41 db   #数据目录
-r--r--r--. 1 root root 2 Oct 13 17:41 format
drwxr-xr-x. 2 root root 4096 Oct 13 17:41 hooks
drwxr-xr-x. 2 root root 4096 Oct 13 17:41 locks
-rw-r--r--. 1 root root 229 Oct 13 17:41 README.txt

2.3 配置svn服务端

[root@localhost syavingc]# cd conf/
[root@localhost conf]# ll
total 12
-rw-------. 1 root root 1118 Oct 13 17:47 authz
-rw-------. 1 root root 341 Oct 13 17:49 passwd
-rw-r--r--. 1 root root 2271 Oct 13 17:50 svnserve.conf

2.4 修改authz文件

[aliases]
# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe

# [/foo/bar]
# harry = rw
# &joe = r
# * =

# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r

[syavingc:/]
zhangsan = rw
lisi = r

注意:

注意:

* 权限配置文件中出现的用户必须已经在用户配置文件中定义。

* 对权限配置文件的修改立即生效,不必重启svn。

用户组格式:

[groups]

=,

其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。

版本库目录格式:

[<版本库>:/项目/目录]

@<用户组名> = <权限>

<用户名> = <权限>

其中,方框号内部分可以有多种写法:

[/],表示根目录及以下,根目录是svnserver启动时指定的,我们指定为/application/svndata,[/]就是表示对全部版本库设置权限。

[repos:/]表示对版本库repos设置权限;

[repos:/syavingc]表示对版本库repos中的syavingc项目设置权限;

[repos:/syavingc/job]表示对版本库repos中的syavingc项目的job目录设置权限;

权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。

权限可以是w、r、wr和空,空表示没有任何权限。

2.5 修改passwd文件

[users]
# harry = harryssecret
# sally = sallyssecret
zhangsan = zhangsan
lisi = lisi

2.6 修改svnserve.conf文件

[root@localhost conf]# grep '^[a-Z0-9]' svnserve.conf 
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz

第3章 客户的登录验证

svn://ip/syavingc

 

posted @ 2017-02-11 05:46  宋某人  阅读(238)  评论(0编辑  收藏  举报