centos7下安装svn服务器

 2018年04月11日 分类:后端编程  评论(0)  阅读(1572)

今天突然想在自己服务器上配置svn,以前一直用的是sftp,用习惯了,不太想去换而已,但是现在git/svn还是挺方便的,省了我很多时间,所以打算在自己服务器上也配置一个。

我们直接开始,首先,检查下自己机器是否有安装过svn:

svnserve --version

如果安装过会显示如下信息

svnserve, version 1.7.14 (r1542130)
   compiled Aug 23 2017, 20:43:38

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository back-end (FS) modules are available:

* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.

Cyrus SASL authentication is available.

如果没有安装,执行以下命令进行安装即可:

yum install -y subversion

安装好之后我们开始配置svn的仓库;

首先创建一个用于存放svn相关配置文件的仓库文件夹

mkdir /data/svn

然后通过下面的命令进行创建版本库

svnadmin create /data/svn

这样就创建好了我们用于存放数据的版本库

版本库中有个conf文件夹,这个文件夹里都是svn的配置文件,有三个,分别是:authz、passwd、svnserve.conf

  • authz:是权限控制文件
  • passwd:是帐号密码文件
  • svnserve.conf:是SVN服务综合配置文件

那么每个文件如何配置呢?看下面的代码

#authz 文件配置

#用户组
[groups] 
#用户组所对应的用户
admin = admin,root,test 
#库目录权限
[/] 
#用户组权限
@admin = rw 
#非用户组权限
*=r 

#passwd 文件配置

[users]
# harry = harryssecret
# sally = sallyssecret
admin = 123456
root = 123456
test = 123456
#svnserve.conf 文件配置

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

[sasl]

 

配置完了之后我们就可以启动svn了,这样就创建了我们自己的svn服务器,启动代码如下:

svnserve -d -r /data/svn

至此我们提交的代码都会存放在我们设定的/data/svn版本库文件夹里面,但是这些数据不是原封不动的存储,而且通过svn自己的方式存储到里面。

那么我们要使用到这个svn仓库,那么我们只需要在本地通过svn命令或者通过图形化工具进行相关操作即可。

 

拿TortoiseSVN for windows为例:

我们只需要安装好TortoiseSVN后,在相应文件夹右键然后选中 Checkout… 然后弹出一个对话框,我们按下面格式填写

URL of repository:svn://服务器IP地址

Checkout directory:填写你本地的文件夹地址

然后点击OK即可。

如果出现error提示,根据相关代码查找即可。

一般情况下svn默认需要开启3690端口来进行服务,如果你的机器没有开通3690端口,那么你可以在iptables中添加即可,具体如下:

vim /etc/sysconfig/iptables

检查下是否有下面这段代码:

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

如果没有,在里面添加即可。然后重启即可

service iptables restart

 

这样我们就能正常的使用svn了。

wechat_app
微信公众号:webapp_club
关注一下,或许能让你获得更多前端咨询信息。
加载中...

评论 1

评论前必须登录!

 

  1. #1

    111

    智言4个月前 (08-20)