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

Unix/Linux
Linux 备份 恢复方法
Linux玩CS反恐精英的方法
在一个ISO镜像中集成多个不同的linux发行版,可刻盘,可引导
Linux 快捷键使用
Linux DHCP 服务器配置方法介绍
Linux 22端口的修改方法
Linux 记录会话过程的命令
Linux 后台执行程序如何操作?
linux Wget命令来浏览网页的方法
Linux tail命令的巧妙应用
Wine 中文存在很多的乱码怎么解决方法
linux 新手教程之创建锁文件的方法
配置Linux 保证其系统的安全
Linux DHCP协议实现过程
Linux系统下破解SAM密码
linux/unix vi 编辑器用法详解
Linux 误删文件的解决方法
Linux系统下的历史记录删除方法
Red Hat Linux 安全设置指南
Linux基本命令-注销、关机、重启

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 37 ::
收藏到网摘: 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>  此时,取出的文件是只读的,如果需要编辑文件,需要对文件加锁取出,防止与他人编辑冲