The RCS MINI-HOWTO
RobertKiesling
$Id:RCS-HOWTO.sgml,v1.41997/08/1415:09:56rakExprak$
--------------------------------------------------------------------------------
这文件包涵RCS基本的安装及使用法,RCS是在Linux之下的GNU修订版本控制系统,这也包括diff(1)和diff3(1)工具的安装,它对RCS的操作而言是必要的.这文件可以是可以整个或者部分自由重制,,这份文件的任何使用方法如同一般的Linux文件计划的HOWTO系列的版权宣告.关於详细资料请看档案版权.送所有的抱怨,建议,错误,和杂项目问题到kiesling@terracom.net,使我就可以尽可能保持这文件是最新且最完整.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
1.RCS全览.
RCS,版本控制系统,是一套的程式它可以追踪文件的改变和在有工作小组情形下可控制共享存取文件.这是通常使用在维护原始码模组.它也提供追踪它自己的文件档案的修订版本.
RCS由WalterF.Tichy和PaulEggert所写.最近Linux的版是RCS版本5.7.有也一个半官方的,分支的版本也可以用.这份HOWTO之中的许多资料都是从RCSmanpage取得.
RCS包含rcs(1)程式,它控制RCS档案合集文件属性,ci(1)和co(1),它检查文件在RCS档案合集的进出,ident(1),它藉由关键字辨识寻找RCS档案合集,rcsclean(1),这个程式没有人在其中工作或者没有改变的档案然後清除它,rcsdiff(1),它执行diff(1)比较修订版本,rcsmerge(1),它合并两个RCS分支到一个单一的工作档,和rlog(1),它列印RCS记录讯息.
由RCS的收集档案可以是任何格式的纯文字,或是二进位元可执行档如果diff程式使用来产生改变文件操纵8-位元数据.靠ident(1)追踪有助於文件可以可选择地包括辨识的字串.在修订版本之间RCS使用工具diff(1)和diff3(3)产生改变文件.一个RCS档案合集由一个档案的最初的修订版本组成,它是版本1.1,和一系列改变文件,每一次修订版本就有一个.每一次从一档案合集中提出一个档案是使用co(1),编辑,和重新收入档案合集中使用ci(1),版本号码被增加,例如,1.2,1.3,1.4,等等连续的修订版本.
档案合集他们本身一般在一个./RCS子目录,尽管RCS有别的选项针对档案合集存储的位置.对於RCS做全览,看rcsintro(1)手册页.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
2.系统需求.
RCS需要diff(1)和diff3(3)在修订版本之间产生上下文diff文件.你的系统上需要装上diff工具程式套件,和当你安装RCS,软体将会检查它的存在.
事先编译好的diff工具程式的二进位档可以在以下网址取得
ftp://sunsite.unc.edu/pub/Linux/utils/text/diffutils-2.6.bin.ELF.tar.gz
和它的镜像站台.如果你需要编译diff(1),etal.,从来源,它的位置是在
ftp://prep.ai.mit.edu/pub/gnu/diffutils-2.7.tar.gz
和它的镜像站台.
你将需要有ELFlibraries安装在你的系统上如果你要安装事先建好的二进位元档.看ELF-HOWTO有更多的详细资料.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
3.由原始档编译RCS.
取得RCS版本5.7的来源套件.这可以在以下网址取得
ftp://sunsite.unc.edu/pub/Linux/devel/vc/rcs-5.7.src.tar.gz
和它的镜射站台.在你打开包装的档案合集之後到你的来源树,你需要针对你的系统设定RCS.在来源目录有程序档configure来完成它,这个首先你需要执行它.这将要产生一个Makefile和适当的conf.sh针对你的系统.你能够然後键入
makeinstall
它将会建立二进位元可执行档.在一些地方你也许需要su改变身份成为root那麽二进位元可执行档就可以被装在正确的目录.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
4.建立和维护档案.
程式rcs(1)做这个工作或者建立档案合集和修改他们的属性.rcs(1)的选项总合可以在rcs(1)说明页中找到.
最容易的方法是建立一个档案合集是首先mkdirRCS在现在目录,当时初始化档案合集使用
rcs-iname_of_work_file
命令.它使用这名称建立和收集档案./RCS/name_of_work_file,v和要求一个文字讯息描述这档案合集,但是这没有储存什麽修订版本在档案合集中.你能够打开或者关掉严厉的档案锁住的使用以下的命令
rcs-Lname_of_work_file
和
rcs-Uname_of_work_file
各自地.有别的选项针对控制存取档案合集,设定它的格式,和设定修订版本数目,这些包涵在rcs(1)说明页中.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
5.ci(1)和co(1).
ci(1)和co(1)是命令被用来检查他们的RCS档案合集的文件进出.ci(1)命令也可以使用在检查一个档案在一档案合集中的进与出.在他们的最简单的形式,ci(1)和co(1)拿唯一的名称的工作档案.
ciname_of_work_file
和
coname_of_work_file
Thecommandform
ci-lname_of_work_file
使用锁定属性启动检查档案,和
co-lname_of_work_file
是履行自动地.即,ci-l检查使用锁定启动重新检查档案提出.
ci-uname_of_work_file
检查档案进入档案合集,重新再一次检查它的进外使用锁住无效属性.在所有的案例中,使用者是由一个记录讯息提示.
ci(1)如果没有已经存在一个档案它会建立一个RCS储存档案.
如果你没有详细说明一个修订版本,ci(1)在储存档案中增加最後的修订版本锁定的版本号目,和附加改订的工作档案到其中.如果你详细说明一个修订版本在一个存在的分支,这必须是比已经存在的修订版本号码还高的.ci(1)将也创造一个新的分支如果你详细说明没有存在的一个分支的修订版本.看ci(1)和co(1)manpages(说明页)有详细资料.
ci(1)和co(1)有不同的选项针对和非互动的使用.再一次,看ci(1)和co(1)manpages(说明页)有详细资料.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
6.修订版本的历史记录.
rlog(1)程式提供资料关於收集档案和的各修订版本的记录储存在其中.命令如下
rlogwork_file_name
将会列印档案的版本历史记录,各修订版的创造日期和作者的userids和是谁锁定那档案.你可以详细说明档案合集的属性和修订版本参数来检视.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
7.在工作文件中包含RCS资料.
co(1)维修一份RCS资料库的关键字清单,它是扩充的何时工作档案是领出.关键词$Id$在一个文件中将要扩大为一串字串它包含档案名,修订版本号码,提领出来的日期,作者,修订版本状态,和上锁人,如果有的话.包含关键词$Log$将要扩大到文件的修订版本历史记录.
这些和别的关键字也许是使用当做是RCS的档案合集的搜索条件.看ident(1)manpage(说明页)可以知道进一步的细节.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
8.RCS和emacs(1)版本控制.
emacs(1)的版本控制便利性可用作是RCS的前端.这资料运用特别地针对版本19.34的GNUEmacs,在主要Linuxdistributions中有提供.当使用emacs(1)编辑一个档案它是使用RCS注册,命令vc-toggle-read-only(预设使用C-xC-q)将会检查一个档案在emacs的版本控制中,然後进入RCS中.Emacs将会打开一个缓冲区在哪里你能够键入一个记录讯息是被包含在RCS记录中.当你是完结了的键入一个记录栏位,键入C-cC-c结束你的输入和执行登录的程序.
如果你有选择用RCS严厉的锁住档案,你必须重新打开锁定的档案来编辑靠emacs(1).你可以提出档案用emacs版本控制使用那指令%在buffer-menu模式下.
更多资料,请看GNUEmacs手册和Emacsinfo(信息)页.
--------------------------------------------------------------------------------