Linux(CentOS)搭建SVN服务器
1.安装命令
yum -y install subversion
查看SVN安装位置
rpm -ql subversion
查看SVN版本
svnserve --version
2.创建版本库根目录(此仅为目录,为后面创建版本库提供存放位置)
mkdir /home/svn
3.创建SVN版本库(创建项目)
svnadmin create /home/svn/project1
svnadmin create /home/svn/project2
创建成功后,进入project1目录下
cd /home/svn/project1
进入目录,可以看见如下文件信息:

创建版本库公共配置文件存放目录,随便打开一个项目版本库复制一份conf目录(即:/home/svn/project1/conf)到 /home/svn 目录下
cp -r /home/svn/project1/conf /home/svn/conf
清空刚才创建的项目版本库conf目录,删除库的所有配置文件
rm -f /home/svn/project1/conf/*
rm -f /home/svn/project2/conf/*
4.修改配置
进入conf目录
cd /home/svn/conf
conf目录下,一共存放三份重要的配置文件,如下:
authz:负责账号权限的管理,控制账号是否读写权限 passwd:负责账号和密码的用户名单管理 svnserve.conf:svn服务器配置文件
编辑 authz 文件
@group1 = rw 中的"rw"意思是[groups]下定义的用户对指定的版本库有读写权限

编辑 passwd 文件

编辑 svnserve.conf 文件(注意:配置的前面不能有空格,一定要顶格写)
#配置匿名用户不可读(none匿名用户不可读写)
anon-access = none
#授权用户可写
auth-access = write
#使用哪个文件作为账号文件
password-db = ../../conf/passwd
#使用哪个文件作为权限文件
authz-db = ../../conf/authz
#认证空间名,版本库所在目录,该文件只为了后面方便复制到每个项目下的conf目录下,每个项目下的svnserv.conf中需要指明当前项目的目录
realm = /home/svn(后面单个项目中的svnserve.conf就需要设置如:realm = /home/svn/project1)
复制 svnserve.conf 配置文件到刚创建的所有项目版本库的conf目录下
cp -f /home/svn/conf/svnserve.conf /home/svn/project1/conf/svnserve.conf
cp -f /home/svn/conf/svnserve.conf /home/svn/project2/conf/svnserve.conf
修改/home/svn/project1/conf/svnserve.conf
realm = /home/svn/project1
修改/home/svn/project2/conf/svnserve.conf
realm = /home/svn/project2
注意:当SVN服务启动时/home/svn/conf下的svnserve.conf文件并不会被版本库载入,而真正被载入的配置是相对每个project/conf里的svnserve.conf文件,所以只是备份在当前目录下为了以后添加项目时方便复制到新的project/conf里,但是所有项目版本库conf目录下的svnserve.conf文件中“realm”都是不一样的!当然每个project/conf里的svnserve.conf文件都复制好并设置好“realm”后,/home/svn/conf下的svnserve.conf文件也可以被删掉。
5.自行配置好防火墙(默认3690端口)
云服务器配置好安全组
CentOS7放开端口
firewall-cmd --permanent --add-port=/tcp firewall-cmd --reload
6.启动SVN服务器(注意:如果在一台服务器上同时启动多个版本管理,那么启动路径必须是所有项目仓库的根路径)
svnserve -d -r /home/svn
也可再设置别的端口(默认端口3690)
svnserve --listen-port -d -r /home/svn
查看端口是否开启
netstat -ntlp
查看进程号
ps -A | grep svn
关闭进程号
kill 进程号
查看SVN启动结果
ps -ef | grep svnserve
7.访问SVN服务器
Windows系统
svn://ip地址/project1
Linux系统
svn co svn://ip地址/project1
其他命令
//查看目录列表
svn list --username 账号 [版本库目录] //查看文件详细信息
svn info --username 账号 [版本库目录] //查看日志
svn log --username 账号 [版本库目录] //检出版本库
svn checkout --username 账号 svn://ip地址/[目录] [目标目录] //更新版本库
svn update [版本库目录]
8.配置使用systemctl管理SVN(CentOS7)
创建/etc/systemd/system/svn.service文件
vi /etc/systemd/system/svn.service
并写入内容
[Unit]
Description=Subversion Server
[Service]
Type=forking
ExecStart=/usr/bin/svnserve --daemon --root /home/svn
ExecStop=/usr/bin/killall svnserve
Restart=always
[Install]
WantedBy=default.target
其中,“/home/svn”是SVN仓库的根路径,请根据情况修改。
通知systemd有个新服务添加
systemctl daemon-reload
启动和停止SVN服务
systemctl start svn.service
systemctl stop svn.service
配置开机自动启动
systemctl enable svn.service
检查SVN服务运作状态
systemctl status svn.service
查看是否开机启动
systemctl is-enabled svn.service
Linux(CentOS)搭建SVN服务器的更多相关文章
- Linux(CentOS)搭建SVN服务器全攻略
虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一步一步教您如何在Centos上搭建SVN 安装#yum ...
- 使用Linux(CentOS)搭建SVN服务器全攻略
虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一步一步教您如何在Centos上搭建SVN 安装 #yu ...
- [记录]CentOS搭建SVN服务器(主从同步)
CentOS搭建SVN服务器(主从同步)1.安装步骤如下: 1)安装: #yum install subversion 2)查看安装位置: #rpm -ql subversion 3)查看版本: #/ ...
- Linux下搭建SVN服务器及自动更新项目文件到web目录(www)的方法
首先搭建SVN服务器 1,安装SVN服务端 直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion ...
- CentOS搭建SVN服务器,并通过Apache HTTP方式访问
摘要:本文主要讲述了在centos 6.5环境下搭建svn服务器,可通过svn:\\IP方式访问.同时由于部分公司内网端口限制,并不能访问外网的svn服务器,所以特地结合了apache服务器,使得可以 ...
- 【svn】Centos搭建svn服务器环境
1.需求描述 在Centos系统中搭建svn服务器环境 2.搭建过程 2.1 yum安装svn [root@localhost /]# yum install svn 2.2 新建目录存储svn目录 ...
- centos搭建svn 服务器 并同步到web 目录(总结)
配置搭建步骤: Linux平台的SVN服务器的配置及搭建 从本地提交代码到svn代码库. 将代码库中代码同步到web目录: 1.在web目录中checkout版本库 进入/home/www目录下 ( ...
- CentOS 搭建 SVN 服务器 及使用教程
服务器与客户端 1.搭建SVN服务器 ① CentOS安装SVN 命令: yum -y install subversion 检查是否安装成功 命令: svn --version 如果显示如下内容说明 ...
- centos搭建svn服务器
1.在centos6.5上面搭建svn服务器,安装svn服务器:yum install subversion 2.在任意目录下创建仓库目录,这里放在/data/mypros目录下 3.执行命令:svn ...
随机推荐
- 常用HTTP contentType与后端处理方式
常用HTTP contentType与后端处理方式 1.Content-Type:application/x-www-form-urlencoded; charset=UTF-8 前端export.j ...
- English trip -- MC(情景课)3 D
xu言: have a nice weekend... sentences How many people are there in you family? they are 3 people in ...
- python-day43--多表查询
一.多表连接查询: #重点:外链接语法 准备表 #建表 create table department( id int, name varchar(20) ); create table ...
- TCP/IP四层与OSI七层模型
OSI七层和TCP/IP四层的关系 1.1 OSI引入了服务.接口.协议.分层的概念,TCP/IP借鉴了OSI的这些概念建立TCP/IP模型. 1.2 OSI先有模型,后有协议,先有标准,后进行实 ...
- iOS UI-UIPickerView(拾取器)、UIWebView(网页视图)和传值方式
// // ViewController.m // IOS_0107_finalToolClass // // Created by ma c on 16/1/7. // Copyright (c) ...
- OC Copy基本使用(深拷贝和浅拷贝)
首先,什么是copy? Copy的字面意思是“复制”.“拷贝”,是一个产生副本的过程. 常见的复制有:文件复制,作用是利用一个源文件产生一个副本文件. 特点:1.修改源文件的内容,不会影响副本文件: ...
- 数据库故障诊断(Troubleshooting)之性能问题导致的数据库严重故障案例之一
好久不来这里写东西,今天有点时间,来这里写点最近遇到的事情.前段时间,某电信业务用户因某核心生产库最近多次宕机重启,多方人员介入无果后,给我发来了邮件,大概意思就是现在该问题已经造成了比较严重的后果, ...
- js获取当前点击元素的索引
以ul下的li元素为例:获取li的索引,代码如下: <ul id="list"> <li></li> <li></li> ...
- mysql日期时间类型总结
MySQL 日期类型:日期格式.所占存储空间.日期范围 比较. 日期类型 存储空间 日期格式 日期范围 ------------ ---- ...
- 使用Condition配合await()和signal()实现等待/通知
关键字Synchronized与wait()和notify()/notifyAll()结合可以实现“等待/通知”模式, Lock类的子类ReentrantLock也可以实现同样的功能,但需要借助Con ...