在Linux上安装SVN
【参考博文https://www.cnblogs.com/puloieswind/p/5856326.html】
检查是否已安装 ------ # rpm -qa subversion
安装SVN服务器 ------ # yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
验证安装 ---------------# cd /etc/httpd/modules;# ls | grep svn;mod_authz_svn.so;mod_dav_svn.so
查看版本 --------------# svnserve --version
安装完成后要建立SVN库 ---------- # mkdir -p /opt/svn/repositories;# svnadmin create /opt/svn/repositories
执行后,自动建立repositories库,查看/opt/svn/repositories文件夹包含了conf,db,format,hooks,locks,README.txt等文件,说明一个SVN库已经建立。
用户密码passwd配置:进入/opt/svn/repositories/conf文件夹下, # vi + passwd //+表示光标放在文件最低端,修改passwd文件的内容,添加最后一行
[users]
# harry = harryssecret
# sally = sallyssecret
zhoulf=123456
用户的权限配置:进入/opt/svn/repositories/conf文件夹下,# vim + authz ,修改antuz文件的内容,添加如下内容:
[/]
zhoulf=rw //给该用户访问所有库的权限
或者:
[repositories:/project]
zhoulf=rw //对repositories的根目录的权限
配置svnserve.conf文件,添加如下内容:
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
#使授权用户有写权限
auth-access=write
#密码数据库的路径
password-db=passwd
#访问控制文件
authz-db=authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=/opt/svn/repositories
配置防火墙端口?
启动svn:# svnserve -d -r /opt/svn(这里需要注意,启动时候目录层级到你建立的仓库的上一级)
查看svn进程:# ps -ef|grep svn|grep -v grep
检测svn端口:# netstat -ln |grep 3690
停止svn:# killall svnserve //停止
启动svn:# svnserve -d -r /opt/svn // 启动
最后在本地启动TortoiseSVN进行测试,右键文件夹,checkout,输入连接地址svn://********;然后输入用户名密码;就可以对该仓库进行管理了。
*可以这样理解,在linux上安装svn,创建文件夹调用svnadmin指令,得到根仓库,然后修改目录下相应的配置文件,包括用户名/密码/权限。最后调用svnserve命令启动svn服务,这个命令可以在不同的文件夹启动,启动后在客户端如果要找到相应的仓库,就需要在svnurl后面加上文件夹路径svn://ip:3690+项目名