使用subversion搭建SVN
使用subversion搭建SVN需要用到的软件包有subversion,apr,apr-util,sqlite,zlib,因为在编译安装subversion时需要指明apr、apr-util、sqlite和zlib的安装路径,所以建议用源代码安装apr、apr-util、sqlite、zlib并在编译时指定安装位置。
下载subversion,apr,apr-util,sqlite,zlib软件包可以使用“wget <网址>”方式;也可以在本地电脑下载好软件包,使用“rz”命令(服务器需要安装lrzsz)将压缩包上传至服务器。
一、 安装apr
tar xf 解压apr压缩包,cd进入解压后的文件夹
./configure --prefix=/opt/apr 配置并设置安装路径
make && make install 编译安装
二、 安装apr-util
tar xf 解压apr-util压缩包,cd进入解压后的文件夹
./configure --prefix=/opt /apr-util --with-apr=/opt/ apr 设置安装路径、指定使用apr的位置
make && make install 编译安装
三、 安装sqlite
tar xf 解压sqlite压缩包,cd 进入解压后的文件夹
./configure --prefix=/opt/sqlite 设置安装路径
make && make install 编译安装
四、 安装zlib
tar xf 解压zlib压缩包,cd 进入解压后的文件夹
./configure --prefix=/opt/zlib 设置安装路径
make && make install 编译安装
五、 安装svn
tar xf 解压subversion压缩包,cd 进入解压后的文件夹
./configure --prefix=/opt/svn --with-apr=/opt/apr --with-apr-util=/opt/apr-util --with-sqlite=/opt/sqlite --with-zlib=/opt/zlib
make && make install 编译安装
六、 设置环境变量
vim /etc/profile
在最后添加以下内容:
export PATH=/opt/svn/bin:$PATH
立即生效source /etc/profile
七、 测试是否安装成功
svnserve --version
八、 创建仓库
mkdir –p /var/svnroot
cd /var/svnroot
svnadmin create test 创建一个名为test的仓库
cd test/conf
九、 配置svnserve.conf
vim svnserve.conf
去掉注释符#
anon-access = none 未验证用户无任何权限
auth-access = write 已验证用户有写权限
password-db = passwd 指定用户名密码文件
authz-db = authz 指定权限配置文件
十、 设置访问权限
- 添加用户并设置用户密码
vim passwd
添加(用户名=密码)
user = password
- 设置权限
[groups]
用户组名 = 用户1,用户2
[版本库:/目录]
@用户组名 = 权限rw
用户名 = 权限rw
十一、 运行SVN,默认使用3690端口
svnserve –d –r /var/svnroot/test
也可以指定端口号 svnserve –d –r /var/svnroot/test --listen-port 65432
十二、 查看svn是否运行
ps –ef |grep svnserve
十三、 配置实例
有四个用户,分别为boss、d、t1、t2,密码均为123,boss隶属于super组,d隶属于developer组,t1、t2隶属于tester组。Super组可对所有文件进行读写操作;developer组可对“develop”文件夹进行读写操作,对“test”文件夹进行读操作;tester组可对“test”文件夹进行读写操作,对“develop”文件夹进行读操作
1) passwd文件
[users]
boss = 123 创建四个名为boss、d、t1、t2用户,密码设置为123
d = 123
t1 = 123
t2 = 123
2) authz文件
[groups]
super = boss 创建三个名为super、developer、tester组,boss隶属于super组
developer = d d隶属于developer组,t1和t2隶属于tester组
tester = t1,t2
[/]
@super = rw
* = r
[/develop]
@super = rw
@developer = rw
@tester = r
[/test]
@super = rw
@developer = r
@tester = rw
十四、 访问svn
可在客户端上安装TortoiseSVN软件访问,访问网址为“svn://ip地址”或“svn://ip地址:端口号”
十五、 备份
- 完全备份
svnadmin dump /var/svnroot/test >/home/full.svn.bak |
md5sum >/home/full.svn.bak.md5
将test仓库完全备份到/home中,命名为full.svn.bak,并生成名为full.svn.bak.md5的校验文件
- 增量备份并生成md5校验文件
svnadmin dump /var/svnroot/test –r 2 --incremental >/home/svn.bak.2 |
md5sum >/home/svn.bak.2.md5
以增量备份将版本库2备份到/home路径下,命名为svn.bak.2,并生成名为svn.bak.2.md5的校验文件
svnlook youngest /var/svnroot/test 查看test仓库最新的版本号
十六、 还原
svnadmin load /var/svnroot/test </home/full.svn.bak
使用subversion搭建SVN的更多相关文章
- 持续集成之二:搭建SVN服务器(subversion)
安装环境 Red Hat Enterprise Linux Server release 7.3 (Maipo) jdk1.7.0_80 subversion-1.10.3.tar.gz apr-1. ...
- 搭建SVN服务器
系统环境:CentOS 6.6 首先查看服务器上是否已安装了svn # rpm -qa subversion 如果没有安装,则执行此命令 # yum list subversion ...
- CentOS 7搭建SVN服务器
安装步骤如下: 1.yum install subversion 2.查看安装版本 svnserve --version 3.创建SVN版本库目录 mkdir -p /var/svn/svnrepos ...
- Linux(Centos)系统上搭建SVN以及常见错误解答
本文主要介绍怎样在Centos上搭建SVN,文章内容比较基础,适合小白用户学习. 1.Linux版本Centos 6.5 查看linux版本命令: cat /etc/issue 2.查看本机上是否已经 ...
- Linux下搭建SVN服务器及自动更新项目文件到web目录(www)的方法
首先搭建SVN服务器 1,安装SVN服务端 直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion ...
- 如何在win上搭建SVN服务器
本博文转自:http://www.cnblogs.com/armyfai/p/3985660.html SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本, ...
- centos搭建SVN三部曲
搭建SVN服务,有效的管理代码,以下三步可以快速搞定. 1.安装 #yum install subversion 判断是否安装成功 #subversion -v svnserve, version 1 ...
- Ubuntu 14.04 下搭建SVN服务器 svn://
Ubuntu 14.04 下搭建SVN服务器 svn:// 安装软件包: sudo apt-get install subversion 之后选择SVN服务文件及配置文件的放置位置.我放在了/srv下 ...
- Centos搭建SVN服务器三步曲
搭建SVN服务,有效的管理代码,以下三步可以快速搞定.1.安装 #yum install subversion 判断是否安装成功#subversion -v svnserve, version 1.6 ...
随机推荐
- Java垃圾回收器
一.Java垃圾回收器要负责完成以下3个任务: 1.分配内存 2.确保被引用对象的内存不被错误回收 3.回收不再被引用的对象的内存空间 二.垃圾回收是一个复杂而又耗时的操作.如果JVM花费过多的时间在 ...
- So many good projects for studying C programming lanuage.
Some one asked a question for studying C programming language on stackexachange.com. He got a bucket ...
- ActionBarCompat
布局文件中添加menu menu_main.xml <?xml version="1.0" encoding="utf-8"?> <menu ...
- Web网站压力测试工具
使用Microsoft Web Application Stress Tool对web进行压力测试 不错关于压力测试博客: http://blog.sina.com.cn/s/blog_5155e8d ...
- 5.ScrollView无法填充满屏幕
问题: <?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.D ...
- android安全:forceStopPackage对android的Alarm的影响
也许一些使用alarmmanager做定时任务的同学遇到过这样的问题:设定alarm后,进入设置-->应用程序管理-->强行停止app后,定时任务就失效了. 简单的讲就是:force st ...
- JS App
JS App 从架构上来看, SPA结构-------RPA结构 不仅仅是JS,还要从Application的角度来看. JS只是单个页面或者功能,Application是从整体的角度来看结构.
- iOS开发——开发必备OC篇&UITableView设置界面完整封装(四)
设置界面完整封装(四) 简单MVC实现UITableView设置界面完善封装及拓展使用 关于使用和拓展, 其实基本上就是同UItableView,知识讲数据改一下就可以 拓展使用 1:首先定义一个数组 ...
- boost.asio源码剖析(四) ---- asio中的泛型概念(concepts)
* Protocol(通信协议) Protocol,是asio在网络编程方面最重要的一个concept.在第一章中的levelX类图中可以看到,所有提供网络相关功能的服务和I/O对象都需要Protoc ...
- 如何在 Visual Studio 2012 控制 TFS 版控時要忽略哪些檔案
幾乎在任何一種版本控管的機制裡,都會遇到那些「不應該簽入到版本庫」的潛規則,以往我們在用 SVN 的時候,我就寫過幾篇文章要大家注意這點.最近都改用 TFS 做版控,因為大多使用 Visual Stu ...