CVSCVS培训培训教程教程李志鹏2005.7(c)2001,杨锦方,版权所有。2版权声明版权声明基于杨锦方©2001杨锦方版权所有。你可以遵照GNUFreeDocumentationLicense拷贝、分发和修改本文档,但是所有拷贝、分发和修改版本都必须包含以上版权声明。(c)2001,杨锦方,版权所有。3CVSCVS是什么?是什么?ConcurrentVersionsSystem,强大复杂的现代版本控制系统,计算机辅助软件工程的核心工具。开放源代码组织使用的标准版本控制系统,全球中小型软件企业中广为使用。风靡全球的Linux操作系统就是在大型分布式CVS系统上开发成功的。(c)2001,杨锦方,版权所有。4为什么要使用为什么要使用CVSCVS软件工程的利器--保护软件资源小组开发必备工具帮助发现极为隐秘的bug具有高价值(c)2001,杨锦方,版权所有。5软件工程的利器-保护软件资源软件工程的利器-保护软件资源保存源代码的全部历史、保存编译、运行环境、系统数据、测试系统、软件文档的全部版本。帮助开发者管理所有的版本,极大的提高效率,节省成本。(c)2001,杨锦方,版权所有。6小组开发必备工具小组开发必备工具小组分工开发时有效隔离各开发者的工作,各分支完成后进行合并,消除干扰。高效多分支并行开发提供多种途径帮助小组成员之间的版本同步、开发通信,辅助解决代码冲突,大大提高协作效率。(c)2001,杨锦方,版权所有。7帮助发现极为隐秘的帮助发现极为隐秘的bugbug有的bug在被引入之后很长时间之内潜伏,出现之后极难找出是什么原因引起的bug。版本管理记录着所有版次的变动。经过对不同版本的比较,开发者能较方便地找出是哪一次变动引起bug。(c)2001,杨锦方,版权所有。8具有高价值具有高价值全球最著名的软件工程软件提供商RationalSoftware的ClearCase是CVS的替代产品,比CVS稍有增强ClearCase非常昂贵,客户端$3000/license,还有昂贵的培训、支持尽管昂贵,ClearCase仍是Rational公司最畅销的软件之一(c)2001,杨锦方,版权所有。9第一课:第一课:CVSCVS入门之旅入门之旅登录CVS服务器登出源代码查看并修改源代码查看差异清除登出的代码(c)2001,杨锦方,版权所有。10登录登录CVSCVS服务器服务器cvs-d:pserver:cvsuser@211.99.38.27:/src/masterloginpassword:cvsuser(c)2001,杨锦方,版权所有。11登出源代码登出源代码cvs-d:pserver:cvsuser@211.99.38.27:/src/mastercheckouthelloCVScvscheckout:updatinghelloCVSUhelloCVS/makefileUhelloCVS/helloCVS.cUhelloCVS/helloCVS.h(c)2001,杨锦方,版权所有。12查看并修改源代码查看并修改源代码进入源代码的目录–cdhelloCVS查看helloCVS.c–#includeintmain(intargc,char*argv[]){return0;}编辑helloCVS.c,在第四行后插入一行printf(“hello,CVS!”);(c)2001,杨锦方,版权所有。13登入(登入(checkincheckin))修改修改cvscommithelloCVS.c–cvs将启动缺省的文本编辑器,要求输入注释,然后输出:CheckinginhelloCVS.c;/src/master/project/helloCVS/helloCVS,v<--helloCVS.cnewrevision:1.2;previousrevision:1.1done(c)2001,杨锦方,版权所有。14查看差异查看差异cvsdiff-r1.1helloCVS.cindex:helloCVS.c==================================RCSfile:/src/master/project/helloCVS/helloCVS.c,vretrievingrevision1.1retrievingrevision1.2diff-r1.1-r1.24a5>printf("hello,CVS!\n");(c)2001,杨锦方,版权所有。15清除代码清除代码cvsrelease-dhelloCVSYouhave[0]alteredfilesinthisrepository.Areyousureyouwanttorelease(anddelete)directory`acct':(c)2001,杨锦方,版权所有。16作业一:入门练习作业一:入门练习从开放源代码的CVS服务器......登出流行的bug-tracking软件gnats的全部源代码,以匿名方式登入(c)2001,杨锦方,版权所有。17第二课:第二课:CVSCVS仓库仓库什么是CVS仓库CVS仓库的client/server结构仓库的内容-文件的版本结构树新仓库对服务器的要求创建新仓库(c)2001,杨锦方,版权所有。18CVSCVS仓库仓库仓库的...