- 1
- 0
- 约1.41万字
- 约 14页
- 2018-03-26 发布于河南
- 举报
CVS,_Automake与Autoconf简介---ZT
第一部分 CVS简介 cvs ( Concurrent Version System )是一个版本控制系统,什么是版本控制系统呢?简单的说,它可以记录程序代码修改的过程,有一个完整的历史记录( history )。辟如说,当你在修改程序代码的时候, 不小心写出了一个 bug,但是你可能很久以后才发现多出了这个 bug, 这个时候,cvs 就能很有效的帮助你找出到底是在哪一次的修改中,出现了这个 bug。 也许你会说, 那我每次都把程序保存起来, 用tar 做好备份不就行了,当然, 你可以这样做, 但是这太浪费空间了! cvs 在版本更改间, 只储存不同的部分, 这样就可以省下很多空间。 在另一个场合里, 更能显示出 cvs 的好处 ,比如多人一起开发软件的时候。 cvs支持远程访问, 用户可以对他要修改的文件加上正在编辑的标志, 让别人知道他要修改这个文件了。 当然, 一个较大的开发队伍,一般还会需要一个 mailing list 用来沟通。毕竟cvs 只是一个管理程序代码的工具, 他并不扮演沟通的角色。 cvs的同类软件还有rcs和sccs。RCS ( Revision Control System ) 可以从FSF获得。SCCS ( Source Code Control System ) 由ATT在SystemV中引入,现在已经被加入X/Open标准( Unix 98? )。比起这些软件,CVS的要优秀得多,特别是在支持多人远程开发方面。由于CVS出现较新,所以使用上反而没有它们普及。当然,如果您熟悉rcs,您会发现学习cvs非常容易。 名词 repository: 意为仓库。在 cvs 里, 它就是你真正存放各历史版本的地方。 pserver: cvs 远程服务器,cvs 有两种工作模式, 一种是 local, 一种是 remote。 一般通过inetd启动pserver。 CVSROOT: 当使用 cvs 的时候, 要设定 CVSROOT这个环境变量, 或是用 -d 选项来指定该参数,该参数指明你的仓库放在哪里。 本地( local )cvs 首先, 确定一个 cvsroot,比如: export CVSROOT=/home/joe/cvsroot/ 建立该目录: mkdir /home/joe/cvsroot 接着,运行cvs init : cvs init cvs init 会帮你把 cvsroot 初始化。接着, 建立一个要放文件的目录 ( 相当于一个Project ): mkdir /home/joe/cvsroot/cvsdoc cd /home/joe/work cvs checkout cvsdoc( 或者简写为: cvs co cvsdoc ) 你会看到下面的信息: cvs checkout: Updating cvsdoc cvs checkout 会把当前最新的版本拷贝到你的当前目录下。 记住, 不要自己建立 /home/joe/work/cvsdoc, 该目录下还会有一些用于管理的 cvs 相关的信息。 接着, 进入 cvsdoc 目录, 编辑 cvs.doc 这个文件档案,输入一些信息。 然后,运行: cvs add cvs.txt cvs commit -m Initial revision. cvs add 就会把 cvs.txt 加入 cvs 维护的文件列表中去。 cvs commit 检查当前目录下所有的在文件列表中的文件,并把对他们的改动加入到仓库中。-m 表示这次 commit 的 message,一般说明此次修改的相关信息。 现在修改一下 cvs.txt,并且,在文件档案的最上面加上 $Id$ 的字样。 改完之后, 再 commit 一次: cvs commit -m Adding new stuff. 现在看看我们所做的修改: cvs log cvs.txt 可以看到: RCS file: /home/joe/cvsroot/cvsdoc/cvs.txt,v Working file: cvs.txt head: 1.2 branch: locks: strict access list: symbolic names: keyword substitution: kv total revisions: 2; selected revisions: 2 description: revision 1.2 date: 2000/09/11 11:55:06; author: joe; state: Exp; lines: +2 -0 i revision 1.1 date: 2000/09/11 11:52:32; author: joe; state: Exp; initi
原创力文档

文档评论(0)