centos7 搭建 svn 服务器

1 安装环境

1.1 安装 subversion
$ yum install subversion

1.2 创建版本库
svn 可以使用多个版本库,先创建一个目录,然后把所有版本库都放进去,方便管理。
创建 svn 目录
$ mkdir -p /home/svn

创建版本库目录
$ cd /home/svn
$ svnadmin create /home/svn/general

2 修改配置文件

2.1 目录结构
在这里插入图片描述
conf 目录:存放版本库的配置文件,用户访问账号、权限等;
db 目录:存放版本库的数据文件;
format 文件:文本文件,记录版本库配置的版本号;
hooks 目录:存放 hook 脚本文件;
locks 目录:存放 subversion 锁定数据的目录,用来追踪访问者;
conf/authz 文件:权限控制文件;
conf/passwd 文件:账号&密码文件;
conf/svnserve.conf 文件:版本库配置文件;

2.2 添加账号
在这里插入图片描述
$ vim passwd
在 [users] 模块中添加账号和密码
格式:账号=密码
如:lk=123456
每个账号一行

2.3 设置权限
在这里插入图片描述
$ vim authz
末尾加入以下内容:

[/]
lk = rw

/:版本库根目录,r:读权限,w:写权限
每个账号一行

2.4 修改版本库配置文件
$ vim svnserve.conf
[general] 模块(版本库名)下打开下面几个注释:

anon-access = none                              # 匿名用户不可读,read 为可读
auth-access = write                             # 授权用户可写
password-db = /home/svn/general/conf/passwd     # 账号文件,根据实际填写
authz-db = /home/svn/general/conf/autthz        # 权限文件,根据实际填写
realm = /home/svn/general                       # 版本库路径,根据实际填写 

2.5 启动 svn
启动指令
$ svnserve -d -r /home/svn/general
默认的端口是 3690,多个版本库是可以分别指定每个版本库的端口
如:
$ svnserve -d -r /home/svn/general --listen-port 3691

查看 svn 占用的端口
$ netstat -antple | grep svnserve

设置开机自启动,把启动命令添加到 rc.local 文件

2.6 停止 svn
单个版本库运行
$ killall svnserve

多个版本库运行,需要根据版本库的 id 结束进程
可以通过端口或版本库路径查询进程 id
$ ps -aux | grep /home/svn/general
or
$ netstat -antple | grep 3691
在这里插入图片描述
根据进程 id 杀死进程
$ kill -9 14411

3 客户端

3.1 checkout
建立一个目录,checkout 版本库
$ mkdir svnbase
$ cd svnbase

checkout 版本库
$ svn checkout svn://[ip]:[port]/[path] ./ --username lk --password 123456
ip:svn 服务器的 ip;
port:版本库的端口;
path:checkout 文件的路径,不写则 checkout 整个版本库;
lk:用户名;
123456:lk 用户的密码

可以把文件拉到本地就成功了。
这样使用用户密码是明文的,不够安全,下一篇介绍使用 http 的方式访问 svn。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值