1,检查是否安装,和svn当前版本
[root@ecs-55d4 ~]# svn --version
svn,版本 1.10.6 (r1863367)
编译于 Mar 23 2020,19:18:19 在 aarch64-openEuler-linux-gnu
2,创建版本库目录
[root@ecs-55d4 ~]# mkdir -p /usr/local/svn/svnrepos
[root@ecs-55d4 ~]#
该目录仅仅只是路径
subversion默认把/usr/local/svn作为数据根目录,开机启动默认从这里开始。
3,创建版本库。
[root@ecs-55d4 ~]# svnadmin create /usr/local/svn/myProduct
在/usr/local/svn下建立一个名为myProduct的仓库(myProduct替换是你自定义的名字),以后所有代码都放在这个仓库下面,创建成功后在svn下面多了几个文件夹。
命令:svnadmin create /usr/local/svn/myProduct
[root@ecs-55d4 ~]# cd /usr/local/svn/myProduct
[root@ecs-55d4 myProduct]# ls
conf db format hooks locks README.txt
则仓库创建成功。
4,配置用户名和密码
conf文件夹中有3个文件,
分别为passwd(帐号密码文件),authz(权限控制文件),svnserve.conf(SVN服务配置文件)。
4.1 用户名密码,修改passwd
admin2 = 123456
test1 = 123456
4.2 配置权限
4.2.1直接用用户,不使用用户分组
[/] #仓库下的所有文件
admin2 = rw #admin2对仓库下所有文件具有可读可写权限
test1 = r #test1只有只读权限
* = #其它用户均无任何权限
4.2.2使用用户分组
配置authz文件
[groups]
admin = admin1,admin2
test = test1,test2
4.3 配置全局参数svnserve.conf
打开下面的5个注释:
# 禁止匿名用户访问
anon-access = none
# 授权用户可写
auth-access = write
# 使用哪个文件作为账号文件
password-db = /usr/local/svn/test/conf/passwd
# 使用哪个文件作为权限文件
authz-db = /usr/local/svn/test/conf/authz
# 认证空间名,版本库所在目录,realm改成创建的svn目录
realm = Repository test
注意:打开注释时切记前面不要留有空格,否则可能有问题。
5, 启动与停止SVN
查看是否启动
[root@ecs-55d4 sysconfig]# ps -ef|grep svnserve
root 3879022 1 0 17:28 ? 00:00:00 svnserve -d -r /usr/local/svn
启动svn命令:
svnserve -d -r /usr/local/svn
注意:-d表示守护进程, -r 表示在后台执行。
killall svnserve # 停止svn# 停止svn
如果提示找不到killall,停止svn还可以采用杀死进程(默认端口为3690)
ps -ef|grep svnserve
kill -9 [进程号]
6,开机自动启动服务
修改配置文件/etc/sysconfig/svnserve,代码如下:
OPTIONS="-d -r /usr/local/svn"
说明:-d表示守护进程, -r 表示在后台执行。