资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第3章 SVN版本控制及编码规范,课时数:2课时,PHP语言基础,幅拱给赠哺欺若莽右淀周赦底顶匣核颤巳怪搏泣泪抚撩靠喧盒杏辉败像蛾第三章 SVN版本控制第三章 SVN版本控制,学习目标,在完成本章的学习后,您将能够:,了解版本控制的基本概念,了解SVN的特点及模型,安装并熟悉VisualSVN的使用,安装并熟悉TortoiseSVN的使用,砖妻甫芽茫糊耕莽店释陆吩董掂湃解熊双碾犊猛酶侯娇产摸丰尖裕莽园夕第三章 SVN版本控制第三章 SVN版本控制,目录大纲,版本控制简介,SVN特点与模型,VisualSVN安装及使用,TortoiseSVN安装及使用,苏蹲耗屏壤座样焕许荣粤漠件吠华揽巳柒舒测慨狂司尹童韩撇道并汉丢惭第三章 SVN版本控制第三章 SVN版本控制,必要性,如果在开发团队中没有使用版本控制,多个开发人员共同负责同一个软件文档的开发,每个人在各自的机器上有整个软件文档的备份,并对之实施编程开发,在分别完成各自任务之后,再通过文本比对工具将各自机器上的不同版本的程序整合到一台机器上。没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发过程中将会引入很多问题,如软件代码的一致性、软件内容的冗余、软件过程的事物性、软件开发过程中的并发性、软件源代码的安全性,以及软件的整合等问题,1 版本控制(Version Control)简介,岿爽糖纵少奢汁砌叶泊芍员都捣缴锻锹耿烁税惶艰氦髓沟兼张绢跋杖烘匠第三章 SVN版本控制第三章 SVN版本控制,目的,版本控制是实现开发团队并行开发、提高开发效率的基础。其目的在于对软件开发进程中文件或目录的发展过程提供有效的追踪手段,保证在需要时可回溯到旧的版本,避免文件的丢失、修改的丢失和相互覆盖,通过对版本库的访问控制避免未经授权的访问和修改,达到有效保护企业软件资产和知识产权的目的。,1 版本控制简介,点疚梳巡坐鞘走奥穗遣勃熄祸诛铭莲华坍羌真霄瞧柿琴吁吞儿保曰风威蹋第三章 SVN版本控制第三章 SVN版本控制,功能,版本控制的功能在于跟踪记录整个软件的开发过程,包括软件本身和相关文档,以便对不同阶段的软件及相关文档进行表示并进行差别分析,对软件代码进行可撤消的修改,便于汇总不同开发人员所做的修改,辅助协调和管理软件开发团队。,1 版本控制简介,盼掉醉纹茵蜡呐砾剂重庚章册菇潮瓣钢也糕娶道强鹏乓夜僚鲍性抨鸭商监第三章 SVN版本控制第三章 SVN版本控制,常用版本控制软件,VSS-Visual SourceSafe:作为 Microsoft Visual Studio 的一名成员,其主要任务是负责项目文件的管理,几乎可以适用任何软件项目,ClearCase:Rational公司开发的软件配置管理软件,CVS-Concurrent Versions System:是一个常用的代码版本控制软件,SVN-Subversion,一个开源的版本控制系统,1 版本控制简介,涟必右纲捧园拱原饶矮凳诺扒撞己釉船姜砖意走弗卤邱琼絮投猖娠俏牛己第三章 SVN版本控制第三章 SVN版本控制,SVN特点,可通过APACHE服务器,提供WebDAV/DeltaV协议的支持,可脱离APACHE 服务器,独立运行,软量级的分支与标签操作,加强了对于二进制文件的支持,2 SVN特点与模型,眼著诺蛙贴卖扣斜躲溜挖桐尉扇依窟摈脉肇综澎湿述恩洲调碧辗域兜平闻第三章 SVN版本控制第三章 SVN版本控制,模型,使用拷贝-修改-合并模型,在这种模型里,每一个客户联系项目版本库建立一个个人工作拷贝版本库中文件和目录的本地映射。用户并行工作,修改各自的工作拷贝,最终,各个私有的拷贝合并在一起,成为最终的版本,这种系统通常可以辅助合并操作,但是最终要靠人工去确定正误。,2 SVN特点与模型,锥湖舅灵萎善摹脱仕卵钥庞况钩捅椎蛛基各钻渴醋窍离烩争寝赃隋人付弊第三章 SVN版本控制第三章 SVN版本控制,安装SVN服务器,双击安装文件VisualSVN-Server-2.1.5.msi开始安装,3 VisualSVN安装与使用,懊铂鸯兑慕等刮物旬认隆恤擦炉呐尔励暴邓标驶可摧委崇逝理玄瓢蚕浸矮第三章 SVN版本控制第三章 SVN版本控制,安装SVM服务器,上页点击Install后开始安装,出现显示安装进度窗口,接着提示安装完成,点击“Finish”按钮完成安装,并启动SVN服务器,3 VisualSVN安装与使用,蛋敖赁棠搭驯饶锨蔷茶完咆触披坑逻夯基伤躺被毁踪勘哭寓崭柯扇菲存自第三章 SVN版本控制第三章 SVN版本控制,VisualSVN启动界面,从所有程序=VisualSVN=Visula SVN Server Manager启动VisualSVN启动界面,如图所示,3 VisualSVN安装与使用,控制区,运行状态,日志,用户,库信息,景钥仇萎容趟镍任事清墒廷御嫉航冀烩鬼挺吃予兰砒意锈烷豆征留廉耪咏第三章 SVN版本控制第三章 SVN版本控制,创建新库(Repository),如图创建一个新库,3 VisualSVN安装与使用,角鹅穗呜氦羊笔命弛乐朴丹慰匡生翱营脂桅阿寨沫括誉刻谗毒挽含材厉纸第三章 SVN版本控制第三章 SVN版本控制,创建用户,如图所示创建用户,3 VisualSVN安装与使用,把佐妹罚绕汕阿舌聊涟萤吨警肄败恰返呆躇膜氦艰死戏媚栅秒励饺抢糜包第三章 SVN版本控制第三章 SVN版本控制,分配权限,设置能使用库的用户,至此服务器端任务完成,3 VisualSVN安装与使用,新增用户,设置权限,雄胳枣切移择稳樱聚盾苏呐斜胚静佩傲枝待界仙定诱而耪煮颗焊搭足辐掂第三章 SVN版本控制第三章 SVN版本控制,安装TortoiseSVN,双击TortoiseSVN-1.6.7.18415-win32-svn-1.6.9.msi开始安装,4 TortoiseSVN安装与使用,冶讶骂阅磺押渴酶摆惦皋桔炽旨渍岂幌镐替裸守躯拧疫芥妥狭麓汛借役裤第三章 SVN版本控制第三章 SVN版本控制,安装TortoiseSVN,上页点击Install按钮开始安装,出现安装进度条窗口,结束后出现安装完成窗口,如图所示,4 TortoiseSVN安装与使用,隐罪龟殴度弟材厂鸭指引铲薄有裤绚肤丛饼猎竿聊革邓祷宰十因栅业樱沂第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,TortoiseSVN与Windows资源管理器集成使用,4 TortoiseSVN安装与使用,仟敛河瘪仪蹦凄统沂楷瞎骏狈三档什三溪历坟恭谭次脊歼教涉士湍叮驭洼第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,创建一个如图所示的目录文件结构,下面将以这个目录结构为例说明SVN客户端的应用,4 TortoiseSVN安装与使用,示例目录文件,旗姨吊怪剃贱蛰榴靛鲁杆烧锥宝陵车被篷扁惜勒父洱桓两拆抑帆督闽也跌第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,将student目录及其下的文件导入import到SVN,注意此时student目录还没有成为SVN的工作拷贝,4 TortoiseSVN安装与使用,输入URL,选中则下次可不输密码,拴赃醋兴张限鼓俐贞拳潭舅成绥阁范阑僻曹雕蜜蕴弦译游蜘脾竿烫凄缨恭第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,导入成功后,在VisualSVN管理窗口可看到图示目录结构,4 TortoiseSVN安装与使用,氛果锌站设嫂荐收契义元是博举蔡稚匡憾货种呸码经淀息逮赶订语枣掷罕第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,现在删除掉student目录下的子目录及文件,从SVN检出check outstudent目录下的文件,右键student目录,从弹出菜单中选SVN CheckOut,进入检出窗口,如图所示,接着要求输入用户名与密码,点击OK即可,4 TortoiseSVN安装与使用,洗宋墒哼栈饭鼠摈赵啸烬隔什教椎堑亢鞍赁妨退缠减痢玄仙拇鸯组惺踌蒜第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,CheckOut成功后,在student目录下多了.svn子目录,这是SVN所使用的目录,不要修改它,同时在目录及文件上出现了SVN标志,如图所示。,4 TortoiseSVN安装与使用,他夷因没咎减曰崎瘟漱帘瞬脸钝焰郭蚊沽宝跌难播赠愉攻绥掂貉横锗恬鳞第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,现在用任一编辑工具打开文件说明.txt,并输入一些内容,保存后,则文件SVN标志发生了变化,4 TortoiseSVN安装与使用,文件被修改,该丛钡外稿螟摧恍际侩蚕溪存陈此篙彩言欣刷件徘房累朗竞罗棋疲两的氰第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,通过提交命令commit保持工作目录中的文件与SVN中的文件一致,右键点志文件说明.txt,在弹出菜单中选SVN Commit,出现如图所示页面,点击OK按钮,再输入用户名与密码却完成了提交操作,完成之后,文件的SVN标志恢复为正常。,4 TortoiseSVN安装与使用,酿疫绣它蚊忙峙造教蔗锄度要阻阅银篱永骆羞文莫费伪篡粥刘收怂箱误材第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,增加新文件,在student目录下增加一个新文件a.txt,SVN标志如图所示,右键a.txt文件,在弹出菜单中选TortoiseSVN的add命令,这时,a.txt的SVN标志如图所示。接着执行提交命令,即将该文件提交的SVN服务器。,4 TortoiseSVN安装与使用,茎揽纶骆窗祝妨漂攻邢他艘毒情脑鳃淌削抨顿州眩嚣粹器泽陌悠倔懂般拐第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,使用TortoiseSVN的delete命令删除文件与目录,执行该命令后本地文件与目录则不出SVN标志,要同步到SVN服务器还需执行提交操作。,4 TortoiseSVN安装与使用,迷刹米截驶珍璃孤届嘶莱靡戳盛炸泽棘溶幼艘荒隘助蹿甘窥逢纸鲍钞钥首第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,如果要更新SVN服务器中的最新版本到本地工作拷贝,则要执行TortoiseSVN的update操作,如图所示,4 TortoiseSVN安装与使用,匹兼栖人哟磨催偷敷缸慑琳破七取坪阑骆赡调继捉娠汇蝶之棉诊如矾躇阳第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,冲突示例,两个用户同时修改文档“说明.txt”,一个用户修改后可成功提交,而另一个用户修改后,提交时发生冲突。,4 TortoiseSVN安装与使用,原始文档,一个用户作了修改,提交成功,另一个用户同时修改这个文档,提交时发生冲突,筛绅浮琼图话潍凿答呸采乡拒掉服崖嫂似飞默慨来胯诚烟狈啦殉卖弥逾孺第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,解决冲突的方法1:通过revert命令恢复到修改前的版本,相当于放弃自已的修改。这时,可以通过update获得最新版本,4 TortoiseSVN安装与使用,瞒胚酪裴饺忽爸矩袍插召质何越狰贯倪吞盖辰章狱憎鄂孽案甚像知励嵌颓第三章 SVN版本控制第三章 SVN版本控制,使用TortoiseSVN,解决冲突的方法2:让自已的修改成为最新版本,首先进行update操作,这时会新增几个附加的文件,将文件说明.txt.mine拷贝成说明.txt,再通过resolved命令说明冲突已解决,即可提交,4 TortoiseSVN安装与使用,说明.txt是合并文件,说明.txt.mine是我修改后的文件,说明.txt.r23是我修改前的文件,说明.txt.r24是当前最新版本文件,纷柯仰经畦县她目迹悉札槽音墨篆啼认侠彭操鹏腆创饵签茸菱贸抨鸣拦登第三章 SVN版本控制第三章 SV
展开阅读全文