Linux(Centos 7.3)搭建 SVN服务器 以及 svn checkout报错解决方法

系统环境:centos7.3 (查看自己版本:cat /etc/redhat-release)

第一步:安装svnserve

yum -y install subversion

第二步:创建版本库目录(为以后版本库提供存放位置)

mkdir /var/svndir

第三步:创建svn版本库(可创建多个进行不同版本库的控制)

svnadmin create /var/svndir/jmoon

(jmoon为版本库的名字,用于客户端checkout时候的目录)

第四步:修改配置

cd /var/svndir/jmoon/conf

conf目录下文件列表如下

total 12
-rw-r--r-- 1 root root 1096 Jan 30 23:20 authz
-rw-r--r-- 1 root root  325 Jan 30 01:14 passwd
-rw-r--r-- 1 root root 3074 Jan 30 01:26 svnserve.conf

authz:负责账号权限的管理,控制账号是否读写权限

passwd:负责账号和密码的用户名单管理

svnserve.conf:svn服务器配置文件

1.编辑 authz 文件(注意:[/]也是必须的)

[/]:表示根目录,即 /var/svnrepos

chenjm = rw:表示用户chenjm对根目录具有读写权CHA

2.编辑 passwd 文件

用户名为:chenjm , 认证密码为:123456(这里学习使用,自己设置复杂点也行)

3.编辑 svnserve.conf 文件(注意:将“#”字符去掉时候需要留意配置的前面不能有空格,一定要顶格写)

anon-access = none:表示禁止匿名用户访问。

auth-access = write:表示授权用户拥有读写权限。

password-db = passswd:指定用户名口令文件,即 passwd 文件。

authz-db = authz:指定权限配置文件,即 authz 文件。

realm = /var/svndir:指定认证域,即 /var/svndir 目录。

第五步:启动svn服务器

svnserve -d -r /var/svndir

启动后,可用ps 查看服务是否已启动(如果checkout链接不上也可以先检查是否未启动svn)

ps -ef | grep 'svnserve'

第六步:客户端访问

在windows下,使用客户端访问工具(例如TortoiseSVN),输入地址:svn://ip地址:3690/jmoon。弹出输入账号密码框证明配置成功。

在linux下,输入命令测试(如果ip地址为公网ip连接失败,但使用 127.0.0.1成功连接就可能是端口没有开放。可以看下面连接失败小结)

svn co svn://ip地址:3690/jmoon

svn checkout 提示“由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。”解决方法

1、svn项目文件配置文件问题:

      检查修改svnserve.conf时,打开注释时,配置的前面是否有空格,应该顶格写。

2、服务器防火墙问题(两个解决办法):

      2.1 关闭防火墙

systemctl stop firewalld.service

      2.2 开放3690端口

firewall-cmd --zone=public --add-port=3690/tcp --permanent

3、服务器厂商安全组设置问题(例如阿里云、腾讯云)

打开阿里云控制台

查看是否有开启3690端口

如果没有就点击“添加安全组规则”,将端口配置上

ps:网络上还有很多相同的帖子为什么写这个呢。其实是自己想偷懒以后要是再配置就不用去网上搜哈哈哈哈,直接拿自己的看。完美。其实这也是个学习方法让自己更巩固对着网上的巴拉巴拉搞完都不知道干了啥,自己再写一份出来清晰很多了。

猜你喜欢

转载自blog.csdn.net/weixin_43118891/article/details/104120329