CentOS7 基于 subversion 配置 SVN server
由于 Window Server 环境下,VisualSVN Server Community 版本只支持 15 个同时在线用户,所以彻底放弃 Windows Server,在 Linux Server 上基于 subversion 建立 SVN server,
1. 首先查看是否已安装 subversion
$ svnserve --version
2. 如果没有,需要先安装
$ sudo yum install subversion
3. 新建一个文件夹,用于存放所有 svn repo,比如在根目录下建立名为 svn 的文件夹
# cd /
# mkdir svn
4. 在上述 svn 文件夹建立第一个 repo,比如名字为 hello_kitty
[/] # cd svn
[/svn/]# svnadmin create hello_kitty
5. 查看一下 hello_kitty 的目录结构 (下述 conf 中三个绿色文件,需要设置)
[/svn/]# tree hello_kitty
hello_kitty/
├── conf
│ ├── authz
│ ├── passwd
│ └── svnserve.conf
├── db
│ └── ...
├── format
├── hooks
│ └── ...
├── locks
│ └── ...
└── README.txt
6. 设置用户名和密码
打开上述 passwd, 比如添加两个用户 lilei ,hanmm,密码分别是 123,56789
[users]
lilei =
hanmm =
7. 设置鉴权
打开上述 authz 文件,为方便起见,添加群组,并指定群组权限
[groups]
english_learn_team = lilei,hanmm [hello_kitty:/]
@english_learn_team = rw
* =
- 对上述橙色部分的说明:
可设置多个群组
每个群组可包含多个用户,用户之间用逗号分隔
- 对上述绿色部分的说明:
[/]:表示对根目录下全部版本库设置权限,根目录是 svnserve 命令启动时指定的目录
[repos:/]:表示对名为 repos 的版本库设置权限
[repos:/abc]:表示对名为 repos 的版本库下的 abc 项目设置权限
[repos:/abc/def]:表示对名为 repos 的版本库下的 abc 下的 def 项目设置权限
- 对上述蓝色部分的说明:
对于群组,要以 @ 开头,而对单个用户名不需要
r 只读,w 只写,rw 或 wr 读写,空表示无权限
* = ,表示任何其他用户或群组无权限,这一句不要省略
8. 配置 server 属性及文件路径
打开上述的 svnserve.conf 文件,修改如下选项
[general]
anon-access = none
auth-access = write
password-db = /svn/hello_kitty/conf/passwd
authz-db = /svn/hello_kitty/conf/authz
注意:为了安全起见,可将上述三个文件权限配置为 600,
# chmod 600 conf/*
9. 启动 SVN serer (-d 表示以后台守护模式运行,-r 表示 svn 的根目录,注意这里的根目录指定)
# svnserve -d -r /svn/
注意,修改 passwd, authz 会立即生效,不需要重启 server,但修改 svnserve.conf 后需要重启 server
# pkill svnserve
# svnserve -d -r /svn/
10. 可以查看一下网络状态,默认情况下 SVN server 使用端口 3690
# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0.0.0.0: 0.0.0.0:* LISTEN /svnserve
注意,如有必要,防火墙需要开放 3690 端口
# /sbin/iptables -I INPUT -p tcp --dport -j ACCEPT
# iptables-save
11. 设置 SVN 服务随 server 开机启动,参见这里。
12. 在 Window 端,直接使用 Tortoise SVN 作为客户端程序,比如 SVN server 的 IP 地址是 10.217.32.107,则上述 repo 的地址为 svn://10.217.32.107/hello_kitty/

输入用户名密码,即可 update,commit,……
注意:svn 客户端的访问方式有多种,例如,
- file:// 直接访问版本库
- http:// 通过 webdav 协议服务支持 subversion 的 apache 服务器
- https:// 与 http:// 相似,但使用 ssl 加密
- svn:// 通过未认证的 tcp/ip 自定义协议访问 svnserver 服务器
- svn+ssh:// 通过认证并加密的 tcp/ip 自定义协议访问 svnserver 服务器
完。
#===============================================================
本文大部分内容来自网友博客: https://www.cnblogs.com/whybxy/p/8939897.html
CentOS7 基于 subversion 配置 SVN server的更多相关文章
- centos7安装并配置svn(转)
一.安装 1. 通过 yum install subversion来安装 2. 查看svn版本 使用: svnserve –version 3. 创建svn版本库 使用命令: svnadmin cre ...
- CentOS7:搭建配置SVN服务器
1. 安装 CentOS通过yum安装subversion. $ sudo yum install subversion subversion安装在/bin目录: $ which svnserve / ...
- centos7基于SVN+Apache+IF.svnadmin实现SVN的web管理
一.介绍 本文介绍的是CentOS7上搭建基于Apache.SVN Server.iF.svnadmin实现web后台可视化管理SVN. iF.SVNAdmin应用程序是Subversion授权文件基 ...
- Visual SVN Server+TortoiseSVN进行源代码管理
安装VisualSVN Server 安装完之后,可配置SVN Server的IP地址,右键下图红色部分,选择属性,然后可配置ServeName和IP Address 之后可以创建用户.用户组和项目库 ...
- CentOS7下SVN server的安装与配置
CentOS7通过yum install命令进行安装SVN(参考:http://subversion.apache.org/packages.html#centos) $ yum install su ...
- 基于腾讯Centos7云服务器搭建SVN版本控制库
基于腾讯Centos7云服务器搭建SVN版本控制库 最近在和小伙伴组队参加一个关于人工智能的比赛,无奈不知道怎么处理好每个人的代码托管问题,于是找到了晚上免费svn托管服务器的服务,但是所给的免费空间 ...
- SVN CentOS7 下配置svn的安装及基础配置介绍
CentOS7 下配置svn的安装及基础配置介绍 by:授客 QQ:1033553122 目录 一. 二. 三. 四. 五. 六. 七. 一. 实践环境 CentOS 7操作系统(CentO ...
- 基于svnserve的SVN服务器(windows下安装与配置)
基于svnserve的SVN服务器(windows下安装与配置) 基于svnserve的SVN服务器(windows下安装与配置)关键字: svn 安装SVNserve 从http://subvers ...
- Centos7 基于SVN+Apache+IF.svnadmin实现web管理
1.简单介绍: iF.SVNAdmin应用程序是您的Subversion授权文件的基于Web的GUI.它基于PHP 5.3,需要安装一个Web服务器(Apache).该应用程序不需要数据库后端或任何类 ...
随机推荐
- 通过bat批处理程序如何实现在多个txt文件后面加上相同的一行文字
通过bat批处理程序如何实现在多个txt文件后面加上相同的一行文字 set/p a=输入要增加的文字 for /f "delims=" %%i in ('dir /b *.txt' ...
- Java向上保留两位小数
setScale(2, BigDecimal.ROUND_UP) 例如:0.035 运算结果 为0.01
- CentOS7 安装mysql(YUM源方式)
1.下载mysql源安装包 $ wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 2.安装mysql ...
- centos6.5安装python3及virtualenv环境
1. 下载源码: wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz wget http://mirrors.sohu.com/ ...
- [转帖]订购微软Windows 7延长支持服务的报价曝光 第三年要价两百美金
订购微软Windows 7延长支持服务的报价曝光 第三年要价两百美金 cnbeta 年2月份的新闻 https://www.cnbeta.com/articles/tech/815885.htm 微软 ...
- [转帖]龙芯:Docker 配置与实践清单
Docker 配置与实践清单 http://www.sohu.com/a/254904706_198222 文章对来官方文档及 Docker Links[1] 中链接内容进行归档整理,包含了日常工作中 ...
- 实时监控服务器某个端口状态TCPing
在给客户做运维服务期间,发现了一个奇怪的现象:备份系统(第三方国产)告警日志显示,每天晚上备份服务器的客户端在3点左右离线然后上线,再离线再上线,每晚两次,很是诡异. 联系了厂家技术支持,前后花了两天 ...
- springboot中配置文件使用2
本文章接上一篇文章:https://www.cnblogs.com/ysq0908/p/11140931.html 1.使用注解@Value获取配置文件的值 注意:上述中的复杂数据封装指:有map等数 ...
- [DEBUG] spring boot在eclipse中用maven打包成jar访问templates报500错误
更新:打war包的话只要把html文件放在resources/templates下即可,根本不需要放外面. 配置application.yml和templates放外面这种做法,打war包确实不行. ...
- 洛谷 P2746 [USACO5.3]校园网Network of Schools
题目描述 一些学校连入一个电脑网络.那些学校已订立了协议:每个学校都会给其它的一些学校分发软件(称作“接受学校”).注意即使 B 在 A 学校的分发列表中, A 也不一定在 B 学校的列表中. 你要写 ...