centos6.5-svn搭建文档
下载相关软件
wget http://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.6.tar.gz
一、查看是否安装了svn工具
[root@CentOS6-node1 ~]# rpm
-qa | grep subversion
subversion-1.6.11-9.el6_4.x86_64
[root@CentOS6-node1 ~]# rpm -e
subversion
卸载rpm包的svn安装包
二、安装ssl
[root@CentOS6-node1 ~]# rpm
-qa |grep ssl
openssl-devel-1.0.1e-15.el6.x86_64
openssl-1.0.1e-15.el6.x86_64
安装之后用命令找到opensslv.h所在的目录,
[root@CentOS6-node1 ~]# find /
-name opensslv.h
/usr/include/openssl/opensslv.h
三.安装svn
mkdir /opt/svn
tar xf
subversion-1.6.6.tar.gz -C /opt/svn/
tar xf
subversion-deps-1.6.6.tar.gz -C
/opt/svn/
cd /opt/svn/subversion-1.6.6/
配置:
./configure --prefix=/usr/local/svn --with-openssl=/usr/include/openssl
--without-berkeley-db
编译和安装
make && make install
创建软链接
ln -s /usr/local/svn/bin/*
/usr/local/bin/
如果 make install 出现下面错误:
/home/upload/subversion-1.6.6/subversion/svnversion/.libs/lt-svnversion: error
while loading shared libraries: libiconv.so.2: cannot open shared object file:
No such file or directory
make: *** [revision-install] Error 127
解决办法:
1、编辑/etc/ld.so.conf文件
vi /etc/ld.so.conf
添加下面一行代码
/usr/local/lib
2、保存后运行ldconfig:
/sbin/ldconfig
注:ld.so.conf和ldconfig用于维护系统动态链接库。
3、然后再安装
make && make install
测试是否安装成功
/usr/local/svn/bin/svnserve
--version
出现内容,说明安装成功
到此svn安装完成。
四、配置svn服务器
1、建立SVN的根目录
mkdir -p /data/svn/
2、建立一个产品仓库
mkdir -p /data/svn/tshop/
svnadmin create /data/svn/tshop/
3.修改版本库配置文件
vim
/data/svn/tshop/conf/svnserve.conf
anon-access = none #修改12行,将read改为none。注意这里必须设置,否则所有用户不用密码就可以访问
password-db = passwd #启用20行配置
authz-db = authz #启用27行配置
修改完配置后,无需重启配置文件。立即生效
4、开始设置passwd用户账号信息
vim /data/svn/tshop/conf/passwd
在最后一行开始添加用户信息。添加zhangsan,lisi用户
adm = 123
#adm设置为运维的管理员,123为密码
zhangsan = 123 #zhangsan设置为运维的管理员,123为密码
lisi = 123 #开发账号
wangwu = 456 #开发账号
5.编辑权限
vim /data/svn/tshop/conf/authz
在实际生产中,我们可以将相同的部门人员添加到同一个组里。在最后一行开始配置。禁用掉上边的[groups]和[alias].我们在下边单独配置。
[groups] #定义组以及组成员
yunwei = adm,zhangsan #向运维组中添加zhangsan,和lisi用户
kaifa = lisi,wangwu
以下为定义权限
[/]
@yunwei = rw
[tshop:/wwwroot]
@kaifa = rw
解释:
[/]:
表示根目录及以下,根目录是svnserve启动时指定的,我们指定为/data/svn/tshop/
[tshop:/wwwroot]:
表示对版本库tshop中的wwwroot项目设置权限;
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。
权限可以是w、r、wr和空,空表示没有任何权限。
6、建立启动svn的用户
useradd svn
根据提示,为用户svn设置密码
允许用户svn访问版本库:
chown -R svn:svn /data/svn
7、启动svn:
方式一:svnserve
-d -r /data/svn/ #默认的启动端口号为3690
方式二:su –
svn -c “svnserve -d –listen-port 9999 -r /data/svn/”
启动成功
[root@CentOS6-node1 conf]#
netstat -antp |grep svn
tcp 0
0 0.0.0.0:3690
0.0.0.0:*
LISTEN 28750/svnserve
五、安装客户端工具
TortoiseSVN-1.8.10.26129-x64-svn-1.8.11 #安装包
LanguagePack_1.8.10.26129-x64-zh_CN #汉化包
安装完毕后,将客户端设置为中文
在桌面空白处,右击空白处


六、客户端操作
(1)点击版本库浏览器

(2)输入svn版本库的根路径


输入相应的用户名和密码。这里的用户名和密码就是我们在/data/svn/tshop/conf/passwd文件里设置的用户名和密码。这时候我们进入到了svn tshop版本库的根目录里
如果我们想切换用户,可以清除认证数据

检出操作
(3)我们进入到里面,创建两个文件夹,hello 和svn
(4)我们在win7客户端检出服务器上的svn版本库中的内容

检出完成

我们进入到D盘的svn目录,发现里面有了hello和svn两个目录。
注意:第二次在检出的时候,不需要再次点击检出了,只需要到D盘的svn目录中,右键svn更新即可。
提交操作
(1)我们在客户端的D盘中的svn目录中,创建测试文件夹kaifa,以及子文件
右击点击svn提交。
选择要提交的文件


提交完毕。
(2)登陆svn版本库浏览器。
我们发现客户端的开发文件以及子目录已经到提交到svn的tshop版本库中。
七.版本还原
进入到检出目录中(D:\svn)


选择要还原的版本即可还原
centos6.5-svn搭建文档的更多相关文章
- svn搭建文档
1.制作本地yum源 a)挂载光盘 [root@localhost ~]# mount /dev/cdrom /mnt b)删除/etc/yum.repos.d目录所有的repo文件 [root@ ...
- 环境搭建文档——Windows下的Python3环境搭建
前言 背景介绍: 自己用Python开发了一些安卓性能自动化测试的脚本, 但是想要运行这些脚本的话, 本地需要Python的环境. 测试组的同事基本都没有安装Python环境, 于是乎, 我就想直接在 ...
- 生产环境轻量级dns服务器dnsmasq搭建文档
dnsmasq搭建文档 一.生产环境域名解析问题 之前生产环境设备较少,是通过维护master(192.168.1.1)设备的hosts文件实现的.每次新增设备后,需要在master的hosts文件中 ...
- kafka集群搭建文档
kafka集群搭建文档 一. 下载解压 从官网下载Kafka,下载地址http://kafka.apache.org/downloads.html 注意这里最好下载scala2.10版本的kafka, ...
- VUE CLI环境搭建文档
VUE CLI环境搭建文档 1.安装Node.js 下载地址 https://nodejs.org/zh-cn/download/ 2.全局安装VUE CLI win+R键打开运行cmd窗口输入一下代 ...
- OpenStack Pike超详细搭建文档 LinuxBridge版
前言 搭建前必须看我 本文档搭建的是分布式P版openstack(1 controller + N compute + 1 cinder)的文档. openstack版本为Pike. 搭建的时候,请严 ...
- OpenStack Ocata 超详细搭建文档
前言 搭建前必须看我本文档搭建的是分布式O版openstack(controller+ N compute + 1 cinder)的文档.openstack版本为Ocata.搭建的时候,请严格按照文档 ...
- 使用ghpage(github服务)搭建文档网站几种方式
可以通过github提供的ghpage服务来搭建网站,有以下三种方式来实现: 1.文档放在master分支,作为一个子目录. 仓库:https://github.com/Ourpalm/ILRunti ...
- Readthedocs+Github搭建文档
一.文档撰写前提 环境部署: > git clone https://github.com/toooney/demo-readthedocs.git > pip install sphin ...
- 类似于SVN的文档内容差异对比工具winmerge
原文:http://www.jianshu.com/p/99282a4f3870 https://sourceforge.net/projects/winmerge/?source=typ_redir ...
随机推荐
- 基于docker 操作mysql5.7
1. 安装好 docker 2. 拉取 mysql5.7 镜像: docker pull mysql:5.7 其他版本 mysql:https://hub.docker.com/_/mysql?tab ...
- RocketMQ应用及原理剖析
主流消息队列选型对比分析 基础项对比 可用性.可靠性对比 功能性对比 对比分析 Kafka:系统间的流数据通道 RocketMQ:高性能的可靠消息传输 RabbitMQ:可靠消息传输 RocketMQ ...
- bugku 杂项 流量分析(cnss)
bugku 杂项 流量分析(cnss) 此题较为简单 wireshark 追踪第一行tcp流信息 得到如下 GET /stat.htm?id=2724999&r=http%3A%2F%2Fsp ...
- C++内存管理:简易内存池的实现
什么是内存池? 在上一篇 C++内存管理:new / delete 和 cookie中谈到,频繁的调用 malloc 会影响运行效率以及产生额外的 cookie, 而内存池的思想是预先申请一大块内存, ...
- Redis cluster 集群部署和配置
目录 一.集群简介 cluster介绍 cluster原理 cluster特点 应用场景 二.集群部署 环境介绍 节点部署 启动集群 三.集群测试 一.集群简介 cluster介绍 redis clu ...
- ios self.和_区别
- "self."调用该类的setter或getter方法,"_"直接获取自己的实例变量.property 和 instance variable 是有区别的. ...
- malloc实现
任何一个用过或学过C的人对malloc都不会陌生.大家都知道malloc可以分配一段连续的内存空间,并且在不再使用时可以通过free释放 掉.但是,许多程序员对malloc背后的事情并不熟悉,许多人甚 ...
- net start Mysql 启动服务时 ,显示"Mysql服务正在启动 Mysql服务无法启动 服务没有报告任何错误
一.问题 有时候,输入net start Mysql 启动服务时 mysql>net start Mysql 显示 Mysql服务正在启动 Mysql服务无法启动 服务没有报告任何错误 二.原因 ...
- 使用NTP原理进行时间同步
在一些物联网企业,平台会和嵌入式一起配合进行工作. 有时平台会希望嵌入式这边不使用现成的NTP方案自己去同步时间,而希望以平台下发的时间为准. 此时就有两个方案. 方案1. 平台下发一个时间戳tim ...
- CF570A Elections 题解
Content 有 \(n\) 个候选人和 \(m\) 个城市,每个城市可以给每个候选人投票,已知第 \(i\) 个城市给第 \(j\) 个人投的选票数是 \(a_{i,j}\).我们将第 \(i\) ...