SVN使用手册——命令行模式
1  SVN概述
SVN的全称Subversion,和VSS一样用来有效地管理代码和版本。同样我们可以进行修改、对比版本、获得版本的历史信息等操作。
1.1 SVN使用环境及安装
SVN的使用环境:
SVN可在Linux系统使用,安装系统时如果选择了自带Subversion,无需安装即可使用命令行。
Windows系统需安装Subversion以便在命令行中使用SVN命令;也可安装TortoiseSVN(“小乌龟”),不用敲SVN命令直接通过右键菜单执行。
目前北研所的SVN使用基于TCP/IP协议的Apache服务器,使我们可以通过http地址来访问版本库。
平台
Linux系统
Windows平台
操作方法
命令行
浏览器
命令行
界面/右键
浏览器
安装方式
安装Linux的时候选择“开发用则自带,否则需另安装SVN包。
无需安装,
直接在地址栏输入版本库的http地址
安装
Subversion
安装
TortoiseSVN
(“小乌龟”)
无需安装,直接在地址栏输入版本库的http地址
优缺点
能查看最新及历史版本,能修改
只能查看最新版本,不能修改
能查看最新及历史版本,能修改
能查看最新及历史版本,能修改,右键直接操作。
只能查看最新版本,不能修改
本文介绍在Windows平台下SVN命令行工具svn的使用。
安装文件:
Subversion —— svn-1.
TortoiseSVN —— TortoiseSVN-1.4.6.11647-win32-svn-1.4.6.rar
文件的具体地址,请参考下文“2.1”章节的介绍。
1.2 SVN工作原理说明
1.2.1 版本库(repository
SVN所有的数据都存储在版本库中并被任意客户端用户分享。客户端用户通过网络连接到版本库,读写这些文件并使其他人可以看到这些修改。
1.2.2 工作拷贝(workcopy)
工作拷贝是版本库中文件和目录在本地的映射。用户并行工作,各自修改本机的私有目录
和文件,最终把修改“提交”至版本库成为最终的版本。
一个工作拷贝中都会有一个“.SVN”管理目录,用来记录工作拷贝的信息、识别文件的状态。由Subversion维护,一般你不用去管它。
注意:要及时刷新你的工作拷贝,将别人的修改更新到你的工作拷贝中,防止因你的工作拷贝中文件过期而浪费时间和精力。
1.2.3 修订版本(revision
版本库接受一次“提交”,就会做一次修订,并给最新版本赋予一个修订版本号,由0开始,逐次加1。修订版本号类似于VSS中的lable标号,更像是一次“提交”后的版本库的“快照”。
1.2.4 防止修改冲突的机制
版本控制系统需要防止可能出现的修改冲突。而SVNVSS的机制是不同的。
VSS采用锁定—修改—解锁的模式保证某一时刻只有一个用户修改文件。如图,
图1.1-1:甲从版本库check out签出同时锁定文件;
图1.1-2文件被锁定乙无法签出文件(check out操作被拒绝);
图1.1-3甲在本地修改好文件后将其check in,服务器上的文件被更新,并同时解锁;
图1.1-4文件解锁乙才能check out签出修改,文件被check out后再次锁定。
SVN系统通过拷贝-修改-合并的模式来防止不小心覆盖掉他人的修改。如图,
图1.2-1甲、乙下载同一版本库的文件到本地工作拷贝各自进行修改。
图1.2-2提交修改时如果甲、乙的修改没有交迭冲突(修改的是同一版本库不同的文件,或者修改的是同一文件的不同部分),SVN会自动合并这些修改到版本库。
图1.2-3如果甲、乙对同一文件的修改产生交迭(修改冲突),甲先提交后乙提交时SVN提示文件A处于冲突状态,这时乙需要跟甲进行讨论,再把手工合并的文件提交至版本库。
2  申请JZBY SVN用户名
2.1 申请用户名的流程。
没有用户名时,可以用公共用户名jzby(密码jzby)练习SVN操作
3  SVN的基本使用操作
3.0进入工作环境
进入命令行。开始—运行—输入cmd。
运行svn --version 命令来检查你的电脑是否安装了Subversion。如果输出显示SVN版本信息即表明电脑已安装Subversion,否则需下载安装SVN包。
确认权限。
方法一:在浏览器地址栏输入192.168.4.46/svn,从版本库列表中选中你要访问的库,输入用户名密码,如果能打开,确认你有这个库读的权限。
方法二:在命令行中运行svn list命令查看版本库根目录下的目录和文件列表。
如下图,查看是否具有TestProject库的权限。
在命令行任意路径下,svn list后面跟要查看的版本库URL地址。如果查看失败表明你没有版本库的读权限。
提示:在命令行中无论是输入URL还是路径都要注意区分大小写,大小写有误会造成操作失败。
3.1 万能的help命令
使用help命令来查询svn的子命令以及子命令的各种用法会很方便。
求助格式:1.svn help  可以查到svn的用法和它所有可用的子命令。
2.svn help [子命令]  (例如:svn help add)
可以查看该子命令的用法以及可以使用哪些选项参数。
3.2 基本的工作周期
典型的工作周期如图,
3.3 拷贝版本库至工作拷贝(svn checkout)
E盘新建一个文件夹比如workcopy,用来存放各个版本库的工作拷贝。
快捷指令url代码大全举例,拷贝测试库TestProject到本地工作拷贝的步骤。
切换命令行路径至E:\workcopy> ,使用命令svn checkout来取出拷贝。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。