SVN服务器端环境搭建步骤
5.1 安装服务器端程序
yum install -y subversion

5.2 创建并配置版本库
创建版本库目录
mkdir -p /var/svn/repository
在版本库目录下创建具体项目目录
mkdir pro_oa
创建SVN 版本库
svnadmin create /var/svn/repository/pro_oa
版本库内容

5.3 配置SVN 对应的服务
思路

SVN
名称:svnserve
默认情况下不是开机自动启动
[root@root02 repository]# chkconfig|grep svn
svnserve 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
[root@root02 repository]# chkconfig svnserve on
[root@root02 repository]# chkconfig|grep svn
svnserve 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
[root@root02 repository]#
对应可执行脚本文件路径
/etc/rc.d/init.d/svnserve
注意备份!
SVN 服务具体配置
原版
args="--daemon --pid-file=${pidfile} $OPTIONS"
修改版
args="--daemon --root 版本库根目录--listen-port 指定端口号--pid-file=${pidfile} $OPTIONS"
args="--daemon --root /var/svn/repository --listen-port --pid-file=${pidfile} $OPTIONS"
使用默认端口号的配置方式
args="--daemon --root /var/svn/repository --pid-file=${pidfile} $OPTIONS"
5.4 启动SVN 服务
[root@rich init.d]# service svnserve start
正在启动svnserve:[确定]
[root@rich init.d]# service svnserve status
svnserve (pid 3443) 正在运行...
[root@rich init.d]# netstat -anp|grep :2255
tcp 0 0 0.0.0.0:2255 0.0.0.0:* LISTEN
3443/svnserve
[root@rich init.d]# ps -ef|grep svnserve|grep -v grep
root 3443 1 0 11:41 ? 00:00:00 /usr/bin/svnserve --daemon --root
/var/svn/repository --listen-port 2255 --pid-file=/var/run/svnserve.pid
[root@rich init.d]# cat /var/run/svnserve.pid
3443
命令行客户端
创建两个工作区目录模拟两个开发人员
mkdir -p /root/workspace/harry
mkdir -p /root/workspace/sally
检出
作用:完整下载版本库中的全部内容。
命令:
svn checkout svn://192.168.40.34/pro_oa ./
附加效果
在指定目录下创建.svn 目录
保存本地目录和文件状态信息,用来和SVN 服务器进行交互
工作副本
.svn 所在的目录
版本控制相关操作都需要在工作副本目录下执行。例如:提交、更新等等这样的操作。
为了保证工作副本能够正常和服务器进行交互,请不要删除或修改.svn 目录中的内容。
添加
SVN 要求提交一个新建的文件前先把这个文件添加到版本控制体系中。
svn add 文件名

提交
要求1:附加日志信息
日志信息相当于写Java 代码时的注释,用来标记本次操作所做的修改。
svn commit -m "xxx" [文件名]
要求2:必须具备相应的权限
使用文本编辑器打开版本库根目录/conf/svnserve.conf 文件



查看服务器端文件内容
[root@root03 harry]# svn list svn://192.168.40.34/pro_oa
good.log
hello.txt
[root@root03 harry]# ^C
[root@root03 harry]#
更新操作
作用:把服务器端文件所产生的所有修改下载到本地
命令:svn update [文件名]


冲突
过时的文件
在一个相对服务器端版本来说是旧版本的基础上进行了修改的文件。
要求:所有过时的文件都必须先执行更新操作,更新后在最新版基础上修改的文件才允许提交。

冲突的产生
条件1:本地当前编辑的文件已经过时。
条件2:从服务器端更新下来的修改和本地的修改在“同文件同位置”不一致。
冲突的表现
文件内

目录内

由于发生冲突产生的冲突

xxx.mine 文件:发生冲突时本地文件内容
xxx.r[小版本号]文件:发生冲突前文件内容
xxx.r[大版本号]文件:发生冲突时服务器端文件内容

冲突的手动解决
第一步:删除冲突发生时产生的三个多余文件
rm 多余的三个文件名
第二步:删除冲突文件内多余的符号
提交
第三步:把文件编辑到满意的状态
第四步:提交
冲突的半自动解决
设置SVN_EDITOR 环境变量

编辑: vim /etc/profile 文件
在末尾添加:
SVN_EDITOR=/usr/bin/vim
export SVN_EDITOR
启动生效文件
source /etc/profile
查看是否是生效
echo $SVN_EDITOR
解决的过程
使用e 选项进入文件内容编辑界面

进入vim 编辑器编辑文件内容

编辑完成后使用r 选项标记为已解决

减少冲突的发生
尽可能在修改文件前先进行更新操作,尽量在最新版基础上修改文件内容。
尽量减少多人修改同一个文件的可能性。
加强团队成员之间的沟通。
SVN服务器端环境搭建步骤的更多相关文章
- Java Web 环境搭建步骤(超详细,包括前期安装步骤)
Java Web 环境搭建步骤 安装对应版本的JDK 配置环境变量 本人安装的路径是C盘,在path中加入C:\Program Files\Java\jdk1.8.0_65\bin 测试配置成功,cm ...
- Linux vagrant+virtualbox环境搭建步骤
Linux vagrant+virtualbox环境搭建步骤 Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用. 我们可 ...
- [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)
MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题) 网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置M ...
- 在Android Studio上测试运行,Unity发布成Android包的环境搭建步骤
我用的是unity5.4.3版本,jdk是1.8.0_131版本,Android-SDK是r24.4.1版本,Android-NDK是r13b版本,作者是刚开始写博客,希望对在unity摸索的人有 ...
- Windows2008 R2 X64 PHP环境搭建步骤
Windows2008 R2 X64 PHP环境搭建步骤: 下载:Mysql5.7.23.PHP5.6.Zend.XCahe 一.安装MYSQL.导入数据: 解压MYsql压缩包,并新建Data目录, ...
- Hadoop分布环境搭建步骤,及自带MapReduce单词计数程序实现
Hadoop分布环境搭建步骤: 1.软硬件环境 CentOS 7.2 64 位 JDK- 1.8 Hadoo p- 2.7.4 2.安装SSH sudo yum install openssh-cli ...
- python+selenium环境搭建步骤
一.自动化简介 1.自动化测试概念: 是把以人为驱动的测试转化为机器执行的一种过程,它是一种以程序测试程序的过程 2.自动化测试分类: 一般IT上所说的自动化测试是指功能自动化测试,通过编码的方式用一 ...
- 基于Python3.7的robotframework环境搭建步骤
一.前言 Robot Framework作为公司能快速落地实现UI自动化测试的一款框架,同时也非常适合刚入门自动化测试的朋友们去快速学习自动化,笔者计划通过从搭建逐步到完成自动化测试的过程来整体描述它 ...
- Hadoop集群环境搭建步骤说明
Hadoop集群环境搭建是很多学习hadoop学习者或者是使用者都必然要面对的一个问题,网上关于hadoop集群环境搭建的博文教程也蛮多的.对于玩hadoop的高手来说肯定没有什么问题,甚至可以说事“ ...
随机推荐
- 在Linux下访问Windows共享文件夹
说明 以下操作以Ubuntu为例,大家可以参考. 我在Ubuntu 14.04和16.04都试过了. Windows共享文件夹 如果局域网内有一台Windows主机,将指定文件夹设为共享,就可以在局域 ...
- [SoapUI]获取Project,Test Suite,Test Case各个级别参数的值
String testResultPath = testRunner.testCase.testSuite.project.getPropertyValue( "testResultPath ...
- KbmMW 4.40.00 正式版发布
经过快3个月的测试,kbmmw 4.40 正式版终于在圣诞节前发布了. We are happy to announce the availability of a new kbmMW release ...
- redis centos 上以 tar.gz 安装redis
1.下载安装文件#wget http://download.redis.io/releases/redis-3.2.3.tar.gz 2.删除文件 rm -rf /usr/local/redisrm ...
- windows平台下spark-shell配置
一.下载安装spark,http://spark.apache.org/,选择合适版本后下载到本地,解压,bin目录下spark-shell文件就是spark命令行交互的入口. 二.下载安装windo ...
- 树莓派3下安装TL-WN722N无线网卡驱动
最近在搞树莓派,我的是国产的树莓派3卡片电脑,想整成一个无线加有线的路由器(树莓派3.TL-WN722N无线网卡.集线器)或者是搭个web认证的WIFI钓鱼热点玩玩. 一开始就遇到问题了,连无线网卡的 ...
- Metasploit学习指南—基础篇
Metasploit是一款强大的渗透测试平台,其中包括了很多渗透测试利器,本文简单介绍一下Metasploit的配置和基础的使用方法,主要包括以下几个方面: Metasploit的核心 基础的配置 M ...
- handsontable-developer guide-data binding,data sources
数据绑定: 1.表格中得数据是引用了数据源中的数据:表格中数据改变,数据源中得数据也改变:数据源中得数据改变,通过render方法,表格中的数据也改变: 2.如果想把数据源中的数据和表格中的数据分开: ...
- EBS报错FRM-92095:Oracle JInitiator版本太旧,请安装版本1.1.8.2或更高版本
EBS打开报错FRM-92095:Oracle JInitiator版本太旧,请安装版本1.1.8.2或更高版本 打开EBS的form,系统报错,中文提示信息是:FRM-92095:oracle ji ...
- Javascript设计模式理论与实战:桥接模式
桥接模式将抽象部分与实现部分分离开来,使两者都可以独立的变化,并且可以一起和谐地工作.抽象部分和实现部分都可以独立的变化而不会互相影响,降低了代码的耦合性,提高了代码的扩展性. 基本理论 桥接模式定义 ...