linux(centos7.6)中如何配置svn服务器

在搭建svn服务器时,遇到了很多坑,最终走出一条正确的配置方式,特此记录。学习就是在一点点总结的过程

系统环境:centOS7.6 64位

一、安装SVN服务&创建版本库

1. 安装SVN

# yum -y install subversion

ps: 如系统之前已有,且不想用,可卸载重装:yum remove subversion

2. 查看svn安装位置

# rpm -ql subversion

3. 创建版本库目录(用于存放版本库)

# mkdir -p /project/svn/svnrepos

 

4. 创建SVN版本库

# svnadmin create /project/svn/svnrepos/demo  (demo为自己建立的版本库名,后续连接svn时,需要放在IP后面的名字)

创建成功后,进入该demo路径下,查看该路径下是否生成配置信息,如生成则创建版本库成功

# cd /project/svn/svnrepos/demo

# ll  

 

 二、配置SVN参数

1. 修改conf文件中配置

进入conf文件夹下,查看三个配置文档

# cd conf/

# ll

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

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

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

 

 1.1 修改authz文件

# vim authz

 

 如无群组需求,可在末尾添加

[/]

account1 =rw

account2=r

1.2 修改passwd文件

  在文件末尾追加账号密码即可,格式为:账号=密码

# vim passwd

 

 

1.3 修改 svnserve.conf 文件(重要)

  # vim svnserve.conf

 

 

2. 配置完成后,启动SVN服务器

# svnserve -d -r /project/svn/svnrepos

启动成功后,可用ps -ef | grep svn 查看

 

 

三、关闭防火墙

因防火墙会拦截SVN的请求,需将防火墙关闭

1. 在iptables-config中添加规则

# vim /etc/sysconfig/iptables-config

在文章末尾添加如下规则:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

2. 执行如下命令:

# /sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT

# systemctl stop firewalld.service

3. 

4. 查看防火墙状态,保证关闭状态即可

# systemctl status firewalld.service

 

 5. 永久关闭防火墙

# systemctl disable firewalld.service

 

四、配置svn服务开机自启(避免因服务器异常重启导致SVN无法使用)

方法1:

1. 在根目录(/root)下创建文件svn.sh

# touch svn.sh

2. 进入svn.sh,编辑文件内容

# vim svn.sh

将如下内容,写入svn.sh文件,绝对路径写之前创建的文件路径

!/bin/bash
/usr/bin/svnserve -d -r  /var/svn/svnrepos

3. 修改该文件权限为777

# chmod 777 svn.sh

4. 加入自动运行

# vim /etc/rc.d/rc.local

末尾添加如下内容:

/root/svn.sh

 

方法2:

1. 直接进入自动运行文件,添加如下语句

# vim /etc/rc.d/rc.local

/usr/bin/svnserve -d -r  /var/svn/svnrepos

 

以上两种方法,均可实现自动启用svn服务。

 

五、连接SVN

1. 在Windows中的小乌龟客户端中,输入地址:svn://ip/版本库名,eg:svn://ip/demo

2. 弹框中输入用户名密码,即可访问

3. 可在windows本地建立文件夹,右击SVN checkout,输入地址连接,即可保存服务器中文件,后续可不用再次连接。亦可提交与拉取最新内容。

 

<个人原创,如转载,请注明出处,谢谢!>

posted @ 2021-01-08 16:50  金鱼精  阅读(285)  评论(0编辑  收藏  举报