当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 使用CVS进行项目开发管理

Unix/Linux
通过管理工具自建Linux防火墙
Linux系统下挂载Windows分区的方法
Linux下使用Mplayer播放各种格式的电影
Linux系统下的硬件安装
Linux系统下的软件安装
Linux系统如何显示多核模式
利用变量在Linux中给文件命名
Linux操作系统中的七件独门武器
如何更有效优化Linux系统硬盘
解决Linux系统无法开机的问题
教你生成Linux系统下Makefile的automake
11正式发布-基于Linux操作系统 Fedora
发布Linux Kernel内核最新稳定版2.6.30
推荐六款高品质免费Linux CAD应用程序
Linux操作系统下运行命令时CTRL+Z的作用
教你Linux系统下配置双网卡路由表
教你在Linux中验证SMB网络协议
Linux系统中确保访问三级域名畅通的方法
linux操作系统的crontab定时命令
Linux系统:特权帐号VS普通帐号

Unix/Linux 中的 使用CVS进行项目开发管理


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 26 ::
收藏到网摘: n/a

/DownloadFiles\a\2003-09-07\(br>  在多人共同开发一个大型项目时,源代码的维护和版本维护是一件令人头疼的事情,由于多人开发,每个开发人员都拥有此项目的副本,所以如果要手动维护同一个文件多人的修改是十分困难的事情。 /DownloadFiles\a\2003-09-07\(br>  另外,可能你需要的项目的版本不是当前开发的最新的版本, 如果为了这个目的而为每一个版本保留一个备份几乎是不可能的。Linux平台上提供了一个功能软件:CVS。众所周知,Linux的发展得益于互联网的发展,大部分的软件都是众多开发者在互联网上共同开发的,这些软件的维护大部分都使用CVS,例如Deban Linux的开发、KDE的开发,以及sourceforg上的开发项目。正确熟练使用CVS是一个Linux程序员基本的素质。 /DownloadFiles\a\2003-09-07\(br>  /DownloadFiles\a\2003-09-07\(br>  /DownloadFiles\a\2003-09-07\(br>  CVS不仅可以维护源代码,事实上,所有的文本文件都可以使用CVS来管理,当然也可以管理 二进制文件,只是需要特殊的命令选项罢了。 /DownloadFiles\a\2003-09-07\(br>  /DownloadFiles\a\2003-09-07\(br>  CVS把文件保存在一个名叫仓库(repository)的地方,仓库中保存的文件并不是每个版本的副本,而是可以从任意版本回溯到初始版本的一些代码的主控信息,这样,就节省了大量的存储空间。 /DownloadFiles\a\2003-09-07\(br>  仓库不仅可以建立在本机上,也可以建立在网络上。另外CVS支持版本分支(tag),这样可以从任意的版本中衍生出另外一个版本进行开发,必要时,还可以把这个分支合并到主开发分支去。 /DownloadFiles\a\2003-09-07\(br>  /DownloadFiles\a\2003-09-07\(br>  CVS需要一个名叫RCS(修订控制系统)的软件,确切说,CVS主要管理开发项目中的目录的改动,而RCS则侧重于管理的一个文件的改变。如果要使用网络的CVS,还需要rsh或者自己内置的cvs-server,rsh是CVS客户于服务器的通信平台,如果需要安全的信息传输,可以使用ssh,这个可以使用CVS_RSH环境变量来指定: /DownloadFiles\a\2003-09-07\(br>  export CVS_RSH=rsh 使用rsh /DownloadFiles\a\2003-09-07\(br>  export CVS_RSH=ssh 使用ssh /DownloadFiles\a\2003-09-07\(br>  /DownloadFiles\a\2003-09-07\(br>  RCS使用 /DownloadFiles\a\2003-09-07\(br>  在使用CVS之前,先介绍一下RCS的使用方法。 /DownloadFiles\a\2003-09-07\(br>  正如前面所说,RCS是针对某一个特定的文件进行管理,常用到的命令是co和ci。RCS使用当 前工作路径下的RCS目录来存储管理的文件。 /DownloadFiles\a\2003-09-07\(br>  ci (check in)把源代码加入到RCS源代码仓库中,每一个添加进代码库中的文件的版本是 1.1。/DownloadFiles\a\2003-09-07\(br>  以后每次修改文件重新ci以后,此文件的版本递增为1.2 ,1.3.……。 /DownloadFiles\a\2003-09-07\(br>  co(check out)把源文件从RCS源代码仓库中取出,缺省的版本是最新的版本,如果你需要一个指定的版本,则需要使用-r选项指定。例如: /DownloadFiles\a\2003-09-07\(br>  $mkdir RCS 建立RCS源代码仓库 /DownloadFiles\a\2003-09-07\(br>  编辑一个文件,如hello.c /DownloadFiles\a\2003-09-07\(br>  #include /DownloadFiles\a\2003-09-07\(br>  int main (void) /DownloadFiles\a\2003-09-07\(br>  { /DownloadFiles\a\2003-09-07\(br>  printf ("Hello World\n"); /DownloadFiles\a\2003-09-07\(br>  return 0; /DownloadFiles\a\2003-09-07\(br>  } /DownloadFiles\a\2003-09-07\(br>  然后把它加入到RCS仓库中: /DownloadFiles\a\2003-09-07\(br>  [kerberos@power zhyf]$ ci hello.c /DownloadFiles\a\2003-09-07\(br>  RCS/hello.c,v <-- hello.c /DownloadFiles\a\2003-09-07\(br>  enter description, terminated with single '.' or end of file: /DownloadFiles\a\2003-09-07\(br>  NOTE: This is NOT the log message! /DownloadFiles\a\2003-09-07\(br>  >>the inital verion. 输入关于文件改动的信息 /DownloadFiles\a\2003-09-07\(br>  >> . 以.结束信息输入 /DownloadFiles\a\2003-09-07\(br>  initial revision: 1.1 初始版本是1.1 /DownloadFiles\a\2003-09-07\(br>  done /DownloadFiles\a\2003-09-07\(br>  [kerberos@power zhyf]$ /DownloadFiles\a\2003-09-07\(br>  当文件加入到源代码仓库后,RCS会自动删除文件。 /DownloadFiles\a\2003-09-07\(br>  /DownloadFiles\a\2003-09-07\(br>  如果需要修改文件,则从仓库取出: /DownloadFiles\a\2003-09-07\(br>  [kerberos@power zhyf]$ co hello.c /DownloadFiles\a\2003-09-07\(br>  RCS/hello.c,v --> hello.c /DownloadFiles\a\2003-09-07\(br>  revision 1.1 /DownloadFiles\a\2003-09-07\(br>  done /DownloadFiles\a\2003-09-07\(br>  此时,取出的文件是只读的,如果需要编辑文件,需要对文件加锁取出,防止与他人编辑冲