Linux安装SVN

445 阅读2分钟

操作系统

cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

服务器IP

192.168.10.100

用户

root

查看svn安装位置

rpm -ql subversion

安装subversion

yum -y install subversion

查看SVN版本

svnserve --version

端口检查

netstat -ln |grep 3690

创建版本库目录

mkdir -p /usr/local/svn/svnrepos

创建svn版本库

svnadmin create /usr/local/svn/svnrepos/code

配置

cd /usr/local/svn/svnrepos/code/conf

[rot@byz conf]# ll
total 12
-rw-r--r--. 1 root root 1080 Nov 20 08:59 authz
-rw-r--r--. 1 root root  309 Nov 20 08:59 passwd
-rw-r--r--. 1 root root 3090 Nov 20 08:59 svnserve.conf

auhz:负责账号权限的管理,控制账号是否读写权限 
passwd:负责账号和密码的用户名单管理 
svnserve.conf:svn服务器配置文件

auth配置

在最后加用户权限,rw表示赋予此账号可读写的权限,请注意[]中斜,一定是反斜杠

用户 = 权限

[\]
daoxiubyz = rw
user1 = rw

passwd配置

在最后加用户名密码

用户 = 密码

daoxiubyz = 123456
user1 = 123456

svnserve.conf配置

原始文内容,都被注释掉的,我们只需要去掉4条指定内容前注释即可

anon-access = read
auth-access = write
password-db = passwd
realm = My First Repository

停止&启动SVN

killall svnserve
svnserve -d -r /usr/local/svn/svnrepos

客户端连接SVN

svn://192.168.10.100/code

开机启动

[root@byz ~]# cat /lib/systemd/system/svnserve.service
[Unit]
Description=Subversion protocol daemon
After=syslog.target network.target

[Service]
Type=forking
EnvironmentFile=/etc/sysconfig/svnserve
ExecStart=/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid $OPTIONS

[Install]
WantedBy=multi-user.target
编辑配置文件
vi /etc/sysconfig/svnserve

subversion默认以/var/svn作为数据根目录,可以通过/etc/sysconfig/svnserve修改这个默认位置。 将 OTIONS="-r /var/svn" 改为 svn 版本库存放的目录 OPTIONS="-r /usr/local/svn/svnrepos"

systemctl enable svnserve.service
启动服务
systemctl start svnserve.service
查看服务列表
systemctl list-units --type=service