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

Unix/Linux
查看linux 下已经安装的软件包信息
linux 系统中软件raid 配置方法
linux 下MySQL服务器的启动与停止
linux 系统下FTP服务器配置方法
Linux系统下如何挂载U盘,硬盘,光驱
linux 系统下DHCP服务器 配置方法
Linux系统下软件的安装与卸载
在Fedora 9中启用ext4文件系统的方法
linux下挂载(mount)光盘镜像文件、移动硬盘、U盘、Windows网络共享和NFS网络共享
Linux查看文件夹大小的命令
LINUX系统grub常见错误分析
llinux fdisk分区工具 使用方法
linux 系统telnet乱码
rhythmbox 乱码的解决方法
linux单网卡绑定多ip
tar.gz 和tar.bz2 详细解释
linux学习笔记
linux系统rpm安装包详解
linux 服务器常用维护命令
出现The file /boot/grub/stage1 not read cor 解决办法

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


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