初学者翻译的,本着“够用”的原则翻的,更有很多精
华没有翻出来,但作为一个入门进阶是够了。
CVS 使用简介
============
CVS 是RCS的前端工具,他是用于多用户并行研发的版本控制工具,他的最大特点是使用了“copy-modify-merge”机制而不是“lock- modify-unlock”。通过使用CVS生成一个存储文档的仓库(repository),存储在仓库中的每个目录叫做模块(module),在修改时将相应的模块检出到工作目录中(working directory)生成对应的目录,任何的修改都在工作目录中完成,修改完成后再提交到仓库中生成新的版本号,并加以保存。
1. CVS初始化
-------------
(1) 创建CVSROOT根目录
编辑有关的环境变量,加入CVSROOT的定义(比如在 /etc/bashrc 文档中加入下面两行):
CVSROOT=/usr/local/cvsroot
export CVSROOT
然后在相应位置开始创建CVSROOT
$cd /usr/local/
$mkdir cvsroot
$cvs –d /usr/local/cvsroot init
这时就会产生/usr/local/cvsroot/CVSROOT 目录,这下面放着有关CVS的配置文档。同时/usr/local/cvsroot/也作为文档仓库存放任何的文档。
(2) 创建研发项目
假如从头开始一个新的项目,就需要创建一个单独的目录,并把任何要使用的文档做一个有效的组织。而假如在开始使用源文档的目录之前就有了,则只需进入该目录就行了。
$cd /work/tang
$ls cvstest
. .. c/
$cd cvstest
然后,就能够输入源文档目录:
$cvs import –m “Create Source Dir” cvstest/c tang cvstest
这样会生成 $CVSROOT/cvstest/c 目录。 其中 -m 用来指定注释信息,假如后面在命令行不指定注释信息,则会启动缺省编辑器(vi)需要输入注释信息。 tang, cvstest分别标识了厂商和发行标识。
注意,使用import命令会把当前目录下的任何文档和目录(包括子目录)引入到文档仓库中指定模块(目录)下。
2. 命令简介
-------------
(1) 检出源文档
cvs checkout [-r rev][-D date][-d dir][-j merg1] [-j merg2] modules
-r 检出指定版本的模块
-D 检出指定日期的模块
-d 检出指定目录而不是模块
-j 合并当前版本和指定版本
使用下面的命令会检出刚才生成的模块,并在当前目录下生成和文档仓库中完全相同的目录结构:
$cvs checkout cvstest/c
对于目录结构比较复杂的模块能够在 $CVSROOT/CVSROOT/modules中加以指定:
1) $cvs checkout CVSROOT/modules
2) 在modules文档中加入下面一行:
SOURCE cvstest/c
3) 然后执行:
$cvs commit –m “Add SOURCE”
以后就能够使用下面的命令在当前路径下生成 cvstest/c 目录
$cvs checkout SOURCE
在当前路径下生成的这个目录就被称为工作目录,对源文档的任何修改都应该在这个目录下完成,而绝对不允许去改变在 文档仓库中$CVSROOT 目录下的文档。
(2) 删除、增加、重命名文档和目录
cvs add [-k kflags][-m message] files...
-k 指定以后该文档的缺省检出目录
-m 对文档的描述
上述命令会加入一个新的文档到文档仓库里,但直到使用了提交命令他才会真正更新文档仓库。
cvs remove [options] files
上述命令会从文档仓库中删除文档,但也要到提交之后才有作用。
例1:增加文档
$cvs checkout SOURCE
$cd cvstest/c
$touch test.c
$cvs add test.c
$cvs commit –m “add test.c”
例2:删除文档
$cvs checkout SOURCE
$cd cvstest/c
$rm test.c
$cvs remove test.c
使用 –f 选项能上面两步合做一步。
$cvs remove –f test.c
假如在提交之前想恢复刚才删除的文档,能够如下:
$cvs add test.c
假如只执行了第一步删除(rm),则能够用下面的方法恢复:
$cvs update test.c
对于重命名的文档,能够先删除再添加。
对于目录的修改(重命名),可能需要修改cvs 管理文档,一般应该遵循以下步骤:
1) 确认任何有关的修改都已提交;
2) 进入文档仓库中要修改的模块目录,对相应的目录进行修改(重命名或删除)
$cd $CVSROOT/modules
$mv old_dir new_dir
3) 假如有必要,修改管理文档,比如modules 文档
假如要删除目录,则应该先对目录中每个文档都进行了删除(包括使用cvs remove )处理之后再执行上面的第2步。
(3) 提交源文档
cvs commit [-Rl][-m mesg] files
-R 连子目录一起提交
-l 只提交本地目录(不提交子目录)
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!



