1. 安装subversion
1.1 查看是否已安装
1
2svnserve --version
1.2 使用yum安装
1
2yum install subversion
1.3 测试是否安装成功
1
2svnserve --version
安装成功会显示版本信息如下
2.创建版本库
2.1 创建目录文件夹
1
2mkdir -p /usr/local/svn/repos
2.2 创建版本库
不建议将多个不相关的项目放入同一个版本库,最好每个项目单独建立一个版本库。
下面我们在/svn/repos目录下创建两个版本库project1和project2
创建project1版本库:
1
2svnadmin create /usr/local/svn/repos/project1
创建project2版本库:
1
2svnadmin create /usr/local/svn/repos/project2
2.3 查看新创建的版本库
使用cd /usr/local/svn/repos命令跳转到目录
1
2cd /usr/local/svn/repos
然后使用ls命令就可以看到新创建的两个版本库如下
分别打开project1和project2可以看到svnadmin创建的版本库的内容
3.版本库配置
3.1 配置文件
打开project1的conf文件夹可看到三个配置文件:
authz(权限配置文件)、passwd(用户及密码配置文件)、svnserve.conf(svn配置文件)
下面我们要分别对这三个文件进行修改
3.2 修改svnserve.conf
使用vim对svnserve.conf进行编辑
1
2vim svnserve.conf
点击键盘“i”进入编辑模式
将被#注释的有下面5项去掉前面的#
1
2
3
4
5
6
7[general] # anon-access = read # auth-access = write # password-db = passwd # authz-db = authz # realm = My First Repository
并修改为如下
1
2
3
4
5
6
7[general] anon-access = none #没有登录不能操作 auth-access = write #登录后可执行写操作 password-db = passwd #用户密码配置文件所在位置 authz-db = authz #权限配置文件所在位置 realm = project1 #版本库名称
修改完成后点击键盘“esc”退出编辑模式,再输入:wq保存并退出vim编辑器
3.3 修改passwd文件
使用vim编辑passwd
1
2vim passwd
新增用户zhangsan和lisi,密码都是123456
1
2
3
4[users] zhangsan = 123456 lisi = 123456
保存退出
3.4 修改authz文件
vim打开authz
1
2vim authz
在[groups]下创建组admin,组员有zhangsan和lisi
1
2
3[groups] admin = zhangsan,lisi
为[/]设置权限
1
2
3
4[/] @admin = rw #admin组用户对根目录下所有文件拥有读写权限 * = r #其他用户只有读权限
保存退出
3.5 多库配置
即多个版本库共用一套配置文件
将/usr/local/svn/repos/project1中的conf文件夹复制到/usr/local/svn/repos
1
2
3
4
5
6
7
8[root@instance-gvhw97el conf]# cp -r /usr/local/svn/repos/project1/conf /usr/local/svn/repos/conf [root@instance-gvhw97el conf]# cd /usr/local/svn/repos [root@instance-gvhw97el repos]# ls conf project1 project2 [root@instance-gvhw97el repos]# cd conf/ [root@instance-gvhw97el conf]# ls authz passwd svnserve.conf
将svnserve.conf中的
1
2realm = project1
修改为
1
2realm = /svn
将passwd修改,增加wangwu和zhaoliu两个用户
1
2
3
4
5
6[users] zhangsan = 123456 lisi = 123456 wangwu = 123456 zhaoliu = 123456
将authz修改为
1
2
3
4
5
6
7
8
9
10
11
12
13[groups] admin = zhangsan,lisi [/] @admin = rw [project1:/] wangwu = rw [project2:/] zhaoliu = rw
4. 启动服务并测试
4.1 查看svn是否已启动
1
2ps aux|grep svnserve
如果有在运行的svn服务,则kill掉
4.2 启动project1版本库服务
1
2svnserve -d -r /usr/local/svn/repos/project1
4.3 测试
我测试使用的是Win7系统下安装的TortoiseSVN
Win7任意位置新建文件夹,重命名为project1
右击文件夹,点击SVN Checkout…
测试project1的版本库使用URL为 svn://ip:port
用户名zhangsan,密码123456
测试成功
4.4 启动/usr/local/svn/repos下所有版本库服务
先杀掉已启动的project1的svnserve
启动/usr/local/svn/repos目录下所有svn服务,并需指定配置文件位置
1
2svnserve -d -r /usr/local/svn/repos/ --config-file=/usr/local/svn/repos/conf/svnserve.conf
4.5 测试多库
URL格式为 svn://ip:port/project1和svn://ip:port/project2
分别测试zhangsan、lisi、wangwu、zhaoliu的读写权限,符合预期效果,测试成功!
最后
以上就是美满冬日最近收集整理的关于CentOS7上svn服务器的搭建(安装+多库权限配置+测试)的全部内容,更多相关CentOS7上svn服务器内容请搜索靠谱客的其他文章。
发表评论 取消回复