Linux 下版本控制器 (SVN) - 命令行客户端

@[toc]
进阶知识-Linux 下版本控制器(SVN)
5、命令行客户端
5.1 创建两个工作区目录模拟两个开发人员
复制代码
5.2 检出
作用:完整下载版本库中的全部内容。
命令:
复制代码
附加效果
在指定目录下创建.svn 目录
保存本地目录和文件状态信息,用来和 SVN 服务器进行交互
工作副本
.svn 所在的目录
版本控制相关操作都需要在工作副本目录下执行。例如:提交、更新等等这样的操作。
为了保证工作副本能够正常和服务器进行交互,请不要删除或修改.svn 目
录中的内容。
5.3 添加
SVN 要求提交一个新建的文件前先把这个文件添加到版本控制体系中。
复制代码
5.4 提交
要求 1:附加日志信息
日志信息相当于写 Java 代码时的注释,用来标记本次操作所做的修改。
复制代码
要求 2:必须具备相应的权限
使用文本编辑器打开版本库根目录/conf/svnserve.conf 文件
复制代码
5.5 查看服务器端文件内容
复制代码
5.6 更新操作
作用:把服务器端文件所产生的所有修改下载到本地
复制代码
5.7 冲突
5.7.1 过时的文件
概念:在一个相对服务器端版本来说是旧版本的基础上进行了修改的文件。
要求:所有过时的文件都必须先执行更新操作,更新后在最新版基础上修改的
文件才允许提交。
5.7.2 冲突的产生
条件 1:本地当前编辑的文件已经过时。
条件 2:从服务器端更新下来的修改和本地的修改在“同文件同位置”不一致。
5.7.3 冲突的表现
文件内

目录内

xxx.mine文件
:发生冲突时本地文件内容xxx.r[小版本号]文件
:发生冲突前文件内容xxx.r[大版本号]文件
:发生冲突时服务器端文件内容
5.7.4 冲突的手动解决
第一步:删除冲突发生时产生的三个多余文件
第二步:删除冲突文件内多余的符号
第三步:把文件编辑到满意的状态
第四步:提交
5.7.5 冲突的半自动解决
设置 SVN_EDITOR 环境变量

复制代码
解决的过程
使用 e 选项进入文件内容编辑界面
进入 vim 编辑器编辑文件内容
编辑完成后使用 r 选项标记为已解决
5.7.6 减少冲突的发生
尽可能在修改文件前先进行更新操作,尽量在最新版基础上修改文件内容。
尽量减少多人修改同一个文件的可能性。
加强团队成员之间的沟通。
评论