【Linux】SVN的安装和配置
SVN
SVN:SVN是Subversion的简称,是一种开放代码的版本控制系统,相比较RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制器服务已从CVS迁移到Subversion。
环境与原料
操作系统:Linux(CentOS版)
svn版本:subversion-1.9.3.tar.gz(下载地址:http://subversion.apache.org/download)
arp软件:apr-1.5.2.tar.gz(下载地址:http://apache.fayea.com//apr/apr-1.5.2.tar.gz)
arp-util软件:apr-util-1.5.4.tar.gz(下载地址:http://apache.fayea.com//apr/apr-util-1.5.4.tar.gz)
SQLite数据库:sqlite-autoconf-3100200.tar.gz(下载地址:http://www.sqlite.org/download.html);
zlib库:zlib-1.2.8.tar.gz(下载地址:http://www.zlib.net)
编译安装
1. 解压压缩包到/usr/svn目录,命令:tar -zxvf subversion-1.9.3.tar.gz -C /usr/svn/
2. 进入安装包下,执行检查环境操作,命令:./configure --prefix=/usr/svn/subversion
执行检查环境命令的时候可能会报错:APR not found(apache的一个运行库未找到)
下载apr-1.5.2.tar.gz(下载地址:http://apache.fayea.com//apr/apr-1.5.2.tar.gz);
- 解压arp: tar xfvz apr-1.5.2.tar.gz -C /usr/svn/
- 进入apr目录:cd /usr/svn/apr-1.5.2
- 执行配置命令:./configure --prefix=/usr/svn/apr
- 执行命令:make
- 安装命令:make install(安装错误可以使用make clean清空)
下载apr-util-1.5.4.tar.gz(下载地址:http://apache.fayea.com//apr/apr-util-1.5.4.tar.gz);
- 解压arp: tar xfvz apr-util-1.5.4.tar.gz -C /usr/svn/
- 进入apr目录:cd /usr/svn/apr-util-1.5.4
- 执行配置命令:./configure --prefix=/usr/svn/apr-util --with-apr=/usr/svn/apr
- 执行命令:make
- 安装命令:make install
进入svn解压目录,再次执行检查环境操作,命令:./configure --prefix=/usr/svn/subversion --with-apr=/usr/svn/apr --with-apr-util=/usr/svn/apr-util
可能报错: Subversion requires SQLite(svn需要SQLite数据库)
下载sqlite-autoconf-3100200.tar.gz(下载地址:http://www.sqlite.org/download.html);
- 解压arp: tar xfvz sqlite-autoconf-3100200.tar.gz -C /usr/svn/
- 进入apr目录:cd /usr/svn/sqlite-autoconf-3100200
- 执行配置命令:./configure --prefix=/usr/svn/sqlite
- 执行命令:make
- 安装命令:make install
进入svn解压目录,再次执行检查环境操作,命令:./configure --prefix=/usr/svn/subversion --with-apr=/usr/svn/apr --with-apr-util=/usr/svn/apr-util
--with-sqlite=/usr/svn/sqlite
可能报错: Subversion requires zlib(svn需要zlib)
下载zlib-1.2.8.tar.gz(下载地址:http://www.zlib.net);
- 解压arp: tar xfvz zlib-1.2.8.tar.gz -C /usr/svn/
- 进入apr目录:cd /usr/svn/zlib-1.2.8
- 执行配置命令:./configure --prefix=/usr/svn/zlib
- 执行命令:make
- 安装命令:make install
进入svn解压目录,再次执行检查环境操作,命令:./configure --prefix=/usr/svn/subversion --with-apr=/usr/svn/apr --with-apr-util=/usr/svn/apr-util
--with-sqlite=/usr/svn/sqlite --with-zlib=/usr/svn/zlib
3. 在svn解压目录下,执行命令:make
4. 在svn解压目录下,执行安装命令:make install
5. 将svn加入PATH中
- 打开profile文件:vi /etc/profile
- 在文件最后面添加: export PATH=/usr/svn/subversion/bin:$PATH
- 退出保存并执行执行:. /etc/profile
6. 测试SVN是否安装成功,执行: svnserve --version
7. 创建代码库
- 创建仓库文件夹,执行命令:mkdir /usr/svn/svn-repository
- 创建代码库,执行命令: svnadmin create /usr/svn/svn-repository/
执行上面的命令后,查看/usr/svn/svn-repository文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立
、
- conf目录:代码库的配置文件
- db目录:数据文件
- hooks(钩子)目录:钩子程序目录,可以放入触发器,放置hook脚本文件的目录
- locks目录:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端
- format:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号
- README:读我文件
8. 配置用户名和密码以及SVN服务配置
进入代码库中的配置文件目录/usr/svn/svn-repository,修改文件passwd,在后面加上用户名和密码,格式:用户名=密码;
- 进入配置文件目录,执行命令:cd /usr/svn/svn-repository/conf/
- 创建代码库,执行命令: vi passwd
进入代码库中的配置文件目录/usr/svn/svn-repository,修改文件authz;
- 进入配置文件目录,执行命令:cd /usr/svn/svn-repository/conf/
- 创建代码库,执行命令: vi authz
- 创建用户组,在[groups]后面加上,组名 = 成员名1,成员名2
- 给用户授权,在[/]某目录下授权,成员名 = 权限
- 给用户组授权,在[respository:/]某目录下授权([<版本库>:/项目/目录] ),@组名 = 权限
/ 表示对根目录下的所有子目录范围设置权限;
*=表示除了上面设置的权限用户组以外,其他所有用户都设置空权限,空权限表示禁止访问本目录,这很重要一定要加上。
注意:对权限配置文件的修改立即生效,不必重启svn。
进入代码库中的配置文件目录/usr/svn/svn-repository,修改文件svnserve.conf;
- 进入配置文件目录,执行命令:cd /usr/svn/svn-repository/conf/
- 创建代码库,并进行一下修改,执行命令: vi svnserve.conf
- 加入一下内容:
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = my-svn-repository
9. 启动SVN服务
启动服务命令:svnserve -d --listen-port 3690 -r /usr/svn/svn-repository
云安装
运行命令:yum -y install subversion
检查版本,命令:svnserve --version
更新版本,命令:yum update subversion
建代码库同上,第8步骤
【Linux】SVN的安装和配置的更多相关文章
- linux下svn的安装与配置
---恢复内容开始--- linux下svn的安装与配置 Linux发行版本:CentOS6.5 1.安装subversion sudo yum -y install subversion 2.创建s ...
- Linux FTP的安装与配置
Linux FTP的安装与配置 ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# service ...
- Linux版OpenVPN安装、配置教程(转)
本文将以目前最新的openvpn-2.3.4.tar.gz(更新于2014-5-2,下载地址)为例来介绍如何在Linux系统中安装.配置及使用OpenVPN. 在这里,我们选用了一台预装CentOS ...
- Linux FTP的安装与配置(转)
Linux FTP的安装与配置 ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# service ...
- 在Linux上怎么安装和配置Apache Samza
samza是一个分布式的流式数据处理框架(streaming processing),它是基于Kafka消息队列来实现类实时的流式数据处理的.(准确的说,samza是通过模块化的形式来使用kafka的 ...
- Linux下MySQL安装和配置
--Linux下MySQL安装和配置 ---------------------------2014/05/18 Linux下MySQL的配置和安装 本文的安装采用 rpm 包安装 1.首先在官网下载 ...
- redis 在Linux下的安装与配置
redis在Linux下的安装与配置 by:授客 QQ:1033553122 测试环境 redis-3.0.7.tar.gz 下载地址: http://redis.io/download http: ...
- Linux FreeTDS的安装与配置
Linux FreeTDS的安装与配置 一.简介 官方网站:http://www.freetds.org 版本:0.64 下载地址:http://ibiblio.org/pub/Linux/ALPHA ...
- Tomcat——Linux下的安装和配置
Tomcat在Linux上的安装与配置 以下使用的Linux版本为: Redhat Enterprise Linux 7.0 x86_64,Tomcat版本为tomcat-7.0.54. 1.下载JD ...
- Linux中Nginx安装与配置详解
转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...
随机推荐
- bootstrap修改勾选样式
小对勾需要引入awesome插件. css部分: .bella-checkbox{ position: relative;}/** 将初始的checkbox的样式改变 */.bella-checkbo ...
- JAVA 文件与base64之间的转化, 以及Web实现base64上传文件
<1>文件与base64字符串之间的转化 package servlet_file_upload; import java.io.File; import java.io.FileInpu ...
- 基于OpenGL编写一个简易的2D渲染框架-01 创建窗口
最近正在学习OpenGL,我认为学习的最快方法就是做一个小项目了. 如果对OpenGL感兴趣的话,这里推荐一个很好的学习网站 https://learnopengl-cn.github.io/ 我用的 ...
- egret-初步接触
class HelloTime extends egret.DisplayObjectContainer { public constructor() { super(); this.addEvent ...
- Python Env
简介: 记录 CentOS 6.x Python 环境的安装步骤. 一.安装依赖包 shell > yum -y install epel-release shell > yum -y i ...
- Python线程优先级队列(Queue)
Python的Queue模块中提供了同步的.线程安全的队列类,包括FIFO(先入先出)队列Queue,LIFO(后入先出)队列 LifoQueue,和优先级队列PriorityQueue.这些队列都实 ...
- java编写一个汽车类,有属性:品牌、型号、排量、速度,有方法:启动、加速、转弯、刹车、息火
/* * 汽车实体类 * 类里面有属性和方法 */public class Car { String brand; //汽车品牌 String modelNumber; //汽车型号 ...
- 常用类一一时间处理相关类一一java.util.Tomezone(java.util.Calendar , java.util.Date , java.text.DateFormat)
时间处理相关类 时间是一个一维的东东.所以,我们需要一把刻度尺来区表达和度量时间.在计算机世界,我们把1970 年 1 月 1 日 00:00:00定为基准时间,每个度量单位是毫秒(1秒的千分之一). ...
- 重学Java
Java web 的课程告一段落了 现在我觉得我应该重新学习一下 Java基础 先分享下昨天学习递归后写的两个短短的代码 1.求5的阶乘 package test; public class fiv ...
- do{}while() ;异常语句
//while (true) //只要括号里面是true(正确的如:(1==1)),就会无限循环 //{ //} //do{}while() //不管while满足与否,首先先做一遍 //然后去看wh ...