SVN在版本控制中的作用.ppt_第1页
SVN在版本控制中的作用.ppt_第2页
SVN在版本控制中的作用.ppt_第3页
SVN在版本控制中的作用.ppt_第4页
SVN在版本控制中的作用.ppt_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

版本控制在团队协作中的应用,作者:研发部2008/5,使用版本控制软件有什么好处?生产工具反应了生产力发展水平,所有成员维护的实际是同一个版本库。人人为我,我为人人,无需专人维护所有文件的最新版本;协同工作,大大提高团队工作效率,无论团队成员分布在天涯还是海角;记录每个文件从诞生到最终完成全过程的每步细节,细度由提交人掌控。利于重用(reuse)以前的劳动成果。及时了解团队中其他成员的进度。资料共享,避免以往靠邮件发送文件造成的版本混乱的局面;轻松比较不同版本间的细微差别,适用于纯文本文件(如STAAD命令文件)、MSOFFICE系列办公软件、WPSOFFICE系列办公软件等,对于mathcad以及autocad等生成的二进制文件,目前只能靠肉眼比较。,记录每一步,打造编年史版本控制介绍,您是否在一个团队中效力?在合作中是否发生过这样的悲剧:当您在修改一个文件时,团队中其他人也在修改这个文件,最终发现您几位的修改有冲突而不得不放弃其中几个人的修改成果?是否曾经保存了一个修改之后,然后又反悔想把这个文件恢复到修改前的状态?是否曾经希望能够看到一个文件的前世?是否曾经在自己的项目中发现了一个错误,然后想立案侦查它是在何时产生的?是否曾想快速比较一个文件的幼年和中年的差别?,好酒也需好包装,TortoiseSVN是Subversion在Windows操作系统上的图形客户端程序,开源、免费KarlFogelTimKempTortoiseSVN项目的发起者StefanKngTortoiseSVN的主要开发者LbbeOnken制作了漂亮的图标、Logo,错误跟踪及文档维护来自世界各地的贡献者版本历史2004-10-1TortoiseSVN1.1.0released2005-6-1TortoiseSVN1.2released2006-1-15TortoiseSVN1.3.0released2006-9-16TortoiseSVN1.4.0released2007-6-11TortoiseSVN1.4.4released,这就是传说中的时间机器和时空隧道SVN版本控制系统,我们很可能需要查看过去版本的文件!,我们可以比较每次对word文件做的改动。,我们可以比较不同时间演示文件的改动,我们还可以比较不同版本的excel文件内容,注:微软Office文件(word,excel.ppt)的版本比较功能不是TortoiseSVN的功劳,TortoiseSVN只是调用了微软Office软件自身的文件比较功能而已。,软件安装,需要客户端安装文件安装完毕后,在“资源管理器”里点击右键,会有如下菜单出现。,把库里的内容checkout出来,新建一个目录,比如D:SVN_Presentation在此目录中点击右键-SVNCheckout.URLofrepository:处选择版本库所在路径。,SVN的工作模式,协同工作的两种模式“copy-edit-merge”(Subversion默认的模式)适用于纯文本文件的协同工作,TortoiseSVN自动合并不同成员对同一文件的修改,如果修改有冲突,需要人工取舍。此模式适合软件开发这种工作。“Lock-Modify-Unlock”(锁模式)适用于纯文本文件及二进制文件的协同工作。比如dwg,mcd,doc,ppt,xls等文件格式。这种模式适合工程设计人员的合作。,Subversion默认的模式,上传本地文件将本地文件上传到SVN目录中如果希望其他同伴也能看到刚上传的文件,需要做提交,同步SVN,同步本地与SVN服务上的文件。将SVN服务上的文件更新到本地SVN会显示出更新的文件和更新的次数,文件提交,对本地文件做修改后提交到SVN在右键菜单中点击SVNCommit提交前写好Message,点击OK,提交权限控制,当提交文件的时候您会看到权限提示信息输入您的开机用户名和密码保存权限设置,可以避免将来重复输入用户名和密码(见红圈),冲突,什么是冲突冲突产生的原因冲突产生的时机解决冲突关于避免冲突的建议,什么是冲突,冲突是指团队协同工作时,当多人同时修改同一个文件,造成本地文件与SVN系统中的文件版本不一致,而导致文件无法提交的情况,冲突产生的原因,产生原因当团队协同工作的时候,多人同时操作一个文件。当有人操作完成后,将该文件提交到SVN上。这样,其他人的本地文件与SVN上的文件版本不一致。当另一人操作完成后,提交该文件时,就会出现冲突。,冲突产生的时机,提交文件时,产生冲突,解决冲突,遇到冲突时,需要update该文件。您会看到新增了三个文件。filename.minefilename.rOLDREVfilename.rNEWREV面对文件冲突,您可以选择以下三种方式解决冲突手动合并冲突文件使用工具解决冲突用revert放弃所做的修改,用工具解决冲突,使用自带工具,如图所示对比两个版本的文件,解决冲突工具中会列出两个版本冲突的部分,并让您选择使用哪个版本的内容,放弃修改,选择revert放弃自己所做的修改,提交解决结果,通过上面所说的三种方法,解决冲突后。要选择resolved解决后,新增的三个文件会自动删除再选择commit提交到SVN,以Word文件为例,发生冲突更新文件解决冲突存在冲突的部分会用红色标出,在红字部分或蓝色提示框中点右键,找到“接受XX”和“拒绝XX”,根据实际情况选择。当红色文字全部消失后,表示冲突已经解决。提交文件因为SVN工具解决冲突的功能会新打开一个文件,而不是更改源文件。所以需要您确认修改完成后保存并覆盖源文件,或将全部内容COPY到源文件中,保存并提交。,关于冲突的建议,在修改文件之前,先进行一次update操作当修改完成后,及时commit,不要在本地停留时间过长在多人协作时,尽量修改自己撰写的部分,不要修改其他部分出现冲突很正常,可以通过前面的三个方法解决,不要相互覆盖,锁模式,某文件已经被同学甲锁定,此时同学乙也在自己的计算机上试图锁定该文件,会发生什么情况?(会有提示:该文件已被同学甲锁定)某试衣间已经被同学甲锁定,此时同学乙也试图进入此试衣间,会发生什么情况?(试衣间内有人,请稍候),TortoiseSVN会检测版本库中的该文件的版本是不是比WorkingCopy的新,如果比Workingcopy新,那么只有用户更新了Workingcopy才能对其成功实施锁定。这就保证了任何一个成员对文件修改时,总是在最新版本基础上进行修改。,当某成员试图锁定某文件时,提交的艺术,采用“Lock-Modify-Unlock”这种模式进行协同工作,需要多进行的两个步骤:GetLock(锁定文件)Commit(提交,提交成功后程序自动把锁释放掉)合理选择提交频度和时机两次提交之间尽量进行同一类操作,比如,统改图层后提交一次,统改标注线型后再提交一次。目的:一旦业主要求有反复,我们也很容易把以前工作成果从库中提出来,减少返工。建议一小时左右提交一次。养成按时提交的习惯,试衣间是公共财产,文件也是。,有人总在试衣间咋办,如果有人在试衣间内土遁了或者晕倒了,我们该怎么办?当然是救人要紧。砸锁(Stealthelocks),logmessage信息填写规则,好的logmessage和糟糕的logmessagelogmessage主要记录的是每次的修改内容。建议把一些重要数据、关键操作写到logmessage中,比如“根据管道工程师山姆同志在2007年7月4日的邮件内容修改结构布置”,可以顺便把山姆同志的邮件内容拷贝到logmessage中。注:修改人和提交时间由软件自动记录,无需人工写入logmessage,翻翻老黄历如何得到历史版本,如何比较两个版本间的差异,checkout和export的区别,checkout方式获得文件后,文件仍处于SVN版本控制中export导出当前

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论