Centos7.6安装SVN

342 阅读3分钟

这是我参与11月更文挑战的第30天,活动详情查看:2021最后一次更文挑战

服务器上已经配置了git,但是git对C#的管理不是很友好。

我就想到了svn。

这里记录一下centos7安装svn的过程。

 

1. 安装SVN服务端

检查是否已安装

rpm -qa subversion

 

安装SVN服务器

yum install subversion

 

查看版本

svnserve –version

 

2. 代码库创建

安装后要创建代码库,根据自己要放置的路径创建代码库文件夹

mkdir -p /svn

 

创建一个svn代码库

svnadmin create /svn

执行后,自动建立库,查看/svn文件夹包含了conf,db,format,hooks,locks,README.txt等文件,说明一个SVN库已经建立。

 

 

3:配置版本库

进入上面conf文件夹下,进行配置

3.1 配置用户

编辑passwd文件,如admin=admin,前面是用户名后面是密码

vi passwd

修改后如下

[users]
# harry = harryssecret
# sally = sallyssecret
admin=admin
gc = gc

 

3.2 权限控制

编辑authz文件

vi authz

表示根目录及以下,根目录是svnserve启动时指定的,我们指定的是/svn; 就是指对全部版本库都具有权限

[groups]
team=admin,gc
[/]
@team=rw

 

权限配置文件中出现的用户名必须已在用户配置文件中定义。

对权限配置文件的修改立即生效,不必重启svn。

 

3.3 服务配置

vi svnserve.conf

修改后如下

[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
#使授权用户有写权限
auth-access=write
#密码数据库的路径
password-db=passwd
#访问控制文件
authz-db=authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=/svn

PS: 注意标签不能错,不能有重复,不然无法连接

 

4:SVN端口

端口默认3690,需查看服务器是否开启3690端口。

这个之前博客中有写,有需要,移步《centos7.4修改ssh登录默认端口

 

5:测试SVN

启动svn

svnserve -d -r /svn

 

查看进程

ps -ef|grep svnserve

 

重启

killall svnserve #停止
svnserve -d -r /svn #启动

 

设置开机启动

systemctl enable svnserve.service

 

6:安装及使用过程中遇到的bug

这里着重说一下我使用svn时遇到的问题:

(1):本地下载SVN代码链接形式

如果这样写:

http://192.168.1.10/AMC

报错:

微信截图_20190828225113.png

 

正确的写法是:

svn://47.100.219.44/AMC

 

(2):启动SVN命令

我的版本库建立在/svn/AMC中

我这里启动SVN命令使用的是

svnserve -d -r /svn/

 

本地下载代码时报错:

微信截图_20190828225113.png

 

输入

killall svnserve

命令停止svn运行

 

启动svn我输入命令

svnserve -d -r /svn/AMC/

 

本地下载代码时报错

微信截图_20190828225418.png

因为链接不存在。

为什么不存在呢?百思不得其解。

 

其实原因很简单,启动svn命令的路径和你下载代码输入链接的路径不一致。

比如 启动svn的命令输入

svnserve -d -r /svn/

 

这就相当于启动svn的时候将根目录设置为/svn/

那么本地下载代码时;链接就应该输入

Svn://192.168.1.10/AMC

 

同理启动svn的命令输入

svnserve -d -r /svn/AMC

 

那么本地下载代码时;链接就应该输入

Svn://192.168.1.10/

(3):确认SVN版本仓库是否搭建完成

将下载代码是的SVN仓库链接中的svn换成http在浏览器中打开

例如

Svn://192.168.1.10/

换成

http:// 192.168.1.10/

在浏览器中打开,出现如下图所示:表明svn搭建成功

微信截图_20190829211317.png

至此,SVN 在服务端配置完毕

 

如果在本地上传或下载代码的时候遇到权限问题。请将svn仓库的权限改为可读可写可执行

Chmod -R 777 /svn/AMC

 

有好的建议,请在下方输入你的评论。 欢迎访问个人博客 guanchao.site

欢迎访问小程序:

在这里插入图片描述