centOS下SVN安装和配置

转载自https://www.cnblogs.com/huhu1020387597/p/9674419.html

1》SVN服务器端文件可见问题

在平时使用SVN时候,一直以为在客户提交文件,那么在服务器对应的版本库下面就会有相同文件。在自己搭建后,发现提交到服务器端文件完全看不见。。。。

这是由于SVN服务器端不是简单将上传的文件一个个存起来,而是采用特殊格式,按照内容增量方式存放,等于说每次文件修改commit,就会生成一个标志文件,而这个文件内只是记录了增加(删减)位置+增加(删减)内容;

2>安装

 yum list subversion 查看软件列表中subversion

在这里插入图片描述

yum -y install subversion 安装

   whick subversion 查看安装目录

  svnserve --version 查看是否安装成功

3》修改根目录

subversion安装后默认根目录是在/var/svn下,可以通过修改/etc/sysconfig/svnserve配置文件中OPTIONS来改变根目录

在这里插入图片描述

4>建立版本库

  mkdir -p /var/svn  建立根目录

  snvadmin create /var/svn/myrepo 建立一个版本库.

  myrepo目录下必然有以下文件 

在这里插入图片描述

主要是修改conf下三个文件

 4.1》先修改passwd文件,按照‘用户名=密码‘

在这里插入图片描述

4.2>在修改authz,这个文件比较关键

在这里插入图片描述

[groups]是组,这个组随便定义的,跟liunx系统组无关。按照"组名 = 用户",但用户必须是passwd里面定义的,不能随便填。

   这里有两个版本库maoke和s1s,分别定义了访问权限

[maoke:/] 表示maoke版本库访问权限,图中是按照用户定义访问权限的。而s1s是按照组定义,按照组定义时候前面要加"@"符号

* = 表示无权限的人无法访问

4.3>svnserve.conf配置

在这里插入图片描述

  这里有建议,将每个版本库中的passwd和authz文件删除,将svnserve.conf中password-db和authz-db指向一个文件,这样可以统一管理版本库的登陆权限,而不需要一个一个的处理。如上截图

 realm 表示此版本库说明,随便写。

5>启动svn

	$ vim /usr/lib/systemd/system/svnserve.service
	修改ExecStart行,加上--log-file=/var/log/svnserve.log
	$ systemctl daemon-reload

systemctl start svnserve.service
  检查服务是否启动成功。

$ ps aux | grep svn
  root 16349 0.0 0.1 162180 900 ? Ss 15:01 0:00 /usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -r /opt/svn
  通过netstat可以看到SVN打开了3690端口。

$ sudo netstat -tnlp
  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 16349/svnserve
6>设置成开机启动。

systemctl enable svnserve.service 如下截图

在这里插入图片描述

7>SVN文件管理

第一时候,先checkout空版本库。然后建立trunk,branches,tags进行管理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值