RCS -- Revision Control System

RCS介绍编
◎顾名思义 RCS是一种修订版本的控制系统

◎建立RCS资料夹:
先在您想要保存的档案或程式码下建一个名为RCS的资料夹

◎用ci登入到RCS:
将程式利用ci登入(check in)到RCS
系统会要求您输入一些对此档案的叙述,单独一行的 . 表示结束。

ex: (绿色表示系统自己产生的,filename乃是我自己随手创的档案 内容只有一行)
$ci filename
RCS/filename,v <-- filename
enter description, terminated with single '.' or end of file:
NOTE: This is NOT the log message!
>> 测试 one
>> .
initial revision: 1.1 (最初的版本是1.1)
done

◎RCS资料存放:
这时您会发现 在目前的目录下原有的filename不见了...
却多了一个名为filename,v 的档案。

◎读取RCS资料:
A.唯读开启:
$co -r filename (从RCS中唯读出资料)
RCS/filename,v --> filename
revision 1.1
done
$

vi filename (读取资料)
用vi开启後会出现这些字样
filename: unmodified, readonly: line 1

B.一般开启:$co -l filename (从RCS中读出资料)
RCS/filename,v --> filename
revision 1.1 (locked)
done
$

-l (小写的L)参数 後可加上rev也就是版本 不加表示最新版

vi filename (读取资料)
用vi开启後会出现这些字样 (表示可以修)
filename: unmodified: line 1
C.回存RCS资料:
当您修改过後,可以用ci filename 再次回存资料到RCS
$ci filename
RCS/filename,v <-- filename
new revision: 1.2; previous revision: 1.1 (显示最新版本为1.2 先前版本为1.1)
enter log message, terminated with single '.' or end of file:
>> 测试 two
>> .
done

回存过後,现行目录中又只剩下RCS资料夹原本的filename已经不见。

D.特殊开启:读取某一版本的修改
$co -r[rev] filename (从RCS中读出资料)
rev表示想要读取的版本号 如:1.1 不加表示最新回存後的版本(目前是1.2)

$co -r1.1 filename

◎RCS名词解释:
RCS file : 在RCS资料夹下的档案
working file: 除了RCS file 的其他档案称之。
check in : ci 将档案存入RCS
check out : co 从RCS取出档案

◎比较版本差异:
rcsdiff:
$ rcsdiff filename
用来比较目前修订後和之前check in 的最新修订版本的差异。
< 表示旧的档案资料
--- 表示分隔
> 表示新的档案资料

释:既然是比较 当然您要有一个正在修正中的档案...
也要有个已经ci的档案

◎Lock 的开/关:
一个working file 需要被锁定(lock)才能进行修正或存入,
若只有您一个人在处理这个档案,您可以把Lock 给关闭,
如此即使处在之前co -r filename (唯读)的状态
也能够修改并存入rcs。
$ rcs -U filename 关闭Lock
$ rcs -L filename 开启Lock

◎存入RCS的方式:
A.一般的check in : $ ci filename
B.check in 後继续编辑: $ ci -l filename (小写的L)
C.check in 後唯读开启: $ vi -u filename

释:一般check in 後,原先的filename会不见,加上上面参数後filename不会消失,
-l 可以直接继续用vi编辑之;-u 则filename是处在唯读的状态。

◎指定存入的版本:
A.预设版本: 从1.1、1.2、1.3 ...以此类推
B.指定版本: $ ci -r[rev] filename
举例说明:我要跳到release 2 版开始,之後的版本就是2.2、2.3、2.4 ...
$ ci -r2 filename 或 $ ci -r2.1 filename

◎版本自动识别:
A.$Id$ :以解的方式,加入这一部份 $Id$
如此在check out 察看档案内容时,会显示如下的状态,而且会自动更新
$Id: filename revision date time author state
ex:
$Id: filename,v 2.3 2001/06/11 09:03:40 panda Exp panda $

B.$Log$ :以解的方式,加入这一部份 $Log$
如此在check out 察看档案内容时,会显示出在check in需要的log的讯息。
您可以利用$Log$来维护整个program的历史...。

◎rcs -- change RCS file attributes : 改变RCS档案的属性

◎RCS 档案内容:
A.各版本的文字
B.存取的表列
C.变更历程的log纪录
D.描述版本的文字
E.控制属性的控制项

◎rcs 语法: rcs options file

◎rcs 参数:
-i :创造出最基本的RCS档案,但不产生任何版本。
预设路径是./RCS ,若已有相同的档案,则会显示错误讯息。
$ rcs -i newfile
RCS file: RCS/newfile,v
enter description, terminated with single '.' or end of file:
NOTE: This is NOT the log message!
>> 这是叙述...
>> .
done

RCS file内容为:
head ; --> 最新的版本
access; --> 存取RCS的表列
symbols;
locks; strict; --> 被Lock的档案
comment @# @; --> 系统对档案的描述

desc --> 自己对於档案的叙述
@这是叙述...
@

: access表列所列的是能够使用RCS档案的使用者,若是空白,
则档案的所有者为档案的创造者或是superuser。

-a[logins] :增加login名称到access表列。
ex: rcs -apanda newfile
如此你会在RCS 档案中发现,在access栏位多了一个名为panda的字串。

-e[logins] :从access表列删减login名称。若login name被省略,则是删除全部。
ex: rcs -epanda newfile
如此你会在RCS 档案中发现,原本在access栏位的panda被删除了。

-A[oldfile] :增加login名称到access表列。
新增已有RCS档案的access表列到某一RCS档案。
ex: rcs -Afilename newfile
此时您会在RCS档案中发现原先filename的access表列,
被加到newfile的access表列。

-c[string] : 加上此参数string字串会出现在comment的部分。
ex: rcs -ctesttxt filename

-mrev:msg : 用msg字串取代原本rev的log。
ex: rcs -m1.1:thisismessage filename

-nname:rev : name是别名,rev是版本。若要取消,则把:rev取消就可以。
ex: rcs -nname:1.1 filename

-Nname:rev : 与-n 的作用相同,但可以覆盖过之前的命名。

-orange : 可以利用-o 这个参数,删除过时的版本。
range的参数:
rev --> 表示只删除这一版本。
rev1:rev2 --> 代表的是从rev1到rev2的分支。
rev: --> 从这个版本的分支开始(包含自己)
:rev --> 表示从分支的开始到自己(包含自己)

ex: rcs -o1.1 filename --> 只删除1.1 这个版本
rcs -o1.1:2.1 filename --> 删除1.1 到 2.1的所有版本
rcs -o1.1: filename --> 删除1.1 到版本2之前的所有版本
rcs -o:2.4 filename --> 版本2到2.4的所有版本都删除

-q : 快速的显示,避免显示出运作细节。
ex: rcs -q filename

-sstate:[rev] : 将状态从原先预设的State Exp(实验性的) 变成其他的名称。
从comment或是$Id$ 都可以看到这项改变。
ex: rcs -sRel:1.1 filename
将1.1版本状态从Exp改成Rel ..
常用的有Stab(stable)、Rel(release)。

-t[file] : 从一个档将叙述文字读入,并取代原有的内容。
ex: 先随便建立一个档案,要有内容的...
rcs -tfile filename
如此你会发现RCS档案中的desc的内容被变更为你建立的那个档案的内容了

-t-string : 跟-t[file]类似,不同的是直接用string取代原有的desc。
ex: rcs -t-string filename

-V : 显示出RCS的版本。
ex: rcs -V filename

◎ci -- check in RCS revisions : 登录RCS的修订版本

◎ci语法: ci options file

◎ci简介: ci能将working file储存到相符合的RCS file
ci会先试着在RCS子目录下找相符合的档案,然後才是现行目录。

ci的呼用者(caller)的登录名称必须在存取表列(access list),除非,
存取表列是空的或是该使用者是superuser或是档案的所有者。

若要附加一个新的修订版本到一个已经存在的分支,则分支的尖端需要被呼用者锁定。
否则,只能创造出一个新的分支。

若没有加上 -f 参数的话,ci 会在存入RCS时会去检查和之前的有何不同。
若相同的话,ci会回复到先前的版本(也就是不会有任何改变)。
$ ci filename
RCS/filename,v <-- filename
file is unchanged; reverting to previous revision 1.1
done

每一个修订版本在储存时,ci会产生一个log讯息,这个讯息应该纪录着改变的状态,
并且一定以一个.独自一行为结尾。

若RCS档案不存在,ci会自己创造出来,并且将working file中的内容作为最初的修订版本,
(预设是1.1),此时的存取表列是空白的,ci并会要求输入叙述性的文字。

修订版本的版本号可以是符号性的、数字性的、或是混和性的。用符号性的命名需要
事先定义,可以用-n或-N设定。

◎ci参数:
-r : 将working file存入RCS。

-l[rev] : 与 -r 功能相同,但-l等同於存入後再执行co -l。 (小写的L)
当您还要继续编辑时使用。
ex: ci -l filename 相当於 ci -r filename 及co -l filename 的效用。

-u[rev] : 与 -l 功能相似,不同的是filename未锁定,也就是唯读无法修改的状态。

释:参数 -r 、 -u 及-l 相互排挤,在後出现的参数会将之前的参数覆盖。

ex: 若ci -l -u filename 则结果等同於 ci -u filename
因为 -u 将 -l 覆盖过去了。

-f[rev] : 强制存入RCS ,即使两个版本内容一样。
ex: ci -f filename

-k[rev] : 为档案加上keyword
ex: ci -k1.2 filename
在RCS的log位置会出现类似如下的叙述。
@checked in with -k by panda at 2001/06/14 08:12:46

-q[rev] : 安静模式。不显示输出的讯息。

-i[rev] : 最基本的check in,若已有相对应的RCS档案,会显示错误讯息。
ex: ci -i filename; 错误讯息如: ci: RCS/filename,v: already exists

-d[date/time]: 设定版本修改的时间,若date被省略,则是采用working file最後被修改的时间。
ex: date的格式 年月日 time 的格式 时分秒
将时间设定为2002年7月11日15时23分15秒 $ci -d020711/152315 filename

-n[name]: 与rcs -nname:rev 类似,都是设定符号名称,不过不用指定版本。
ex: ci -nbeta filename 将filename最近的修订版加上一个符号名称为beta。

-N[name]: 与rcs -Nname:rev 类似,都是强制设定版本,不过不用指定版本号。
ex: ci -Nbeta filename 将filename最近的修订版强制加上一个符号名称为beta。

-sstate: 设定check in 版本的状态,预设是EXP(实验性的),与rcs -sstate:[rev] 功能相似。
ex: ci -sStab filename 将版本设为STABLE

-wlogin: 用login的名称取代author後的login名称。
ex: ci -wtestlogin filename
显示的状态为:
date 2001.06.19.09.09.19; author testlogin; state Exp;

-V: 显示RCS系统的版本
ex: ci -V 会显示出如下的状况 RCS version 5.7

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
The "RCS Commander" (RCS = Remote Control System) tool supports you in your day-to-day work with SINUMERIK solution line control systems. The "RCS Commander" tool makes it easy to manage files on your PC and on SINUMERIK solution line control systems. The "RCS Commander" tool offers the following functions: Exchanging data between the SINUMERIK and your PC. Generating and restoring an image from the CompactFlash Card of your control system to save data. Writing images to a CompactFlash Card. Loading commissioning files directly to the control system and from the control system to your PC. This function is used to support commissioning. Managing the control system's NC data. You can copy files directly from the PC to the NC and from the NC to the PC. Monitoring processes and remote control of the SINUMERIK via a remote control function. Saving the control system's current HMI view as a screen on your PC. This function is used to represent your control system and improves support in the event of an error. Editing the following user files in the OFFLINE mode on the PC: PLC alarm texts (oem_alarms_plc) Cycle alarm texts (oem_alarms_cycles) Part program messages (oem_partprogram_messages) EasyScreen files Tool management texts EasyExtend files (oem_aggregate) Maintenance planner files (oem_maintenance) Managing user files with the following options: Creating a project OFFLINE. Create a project, which automatically copied the files from the control. Copy individual files using project dialog to the control system or copy from the control system into the project. Delete user files using project dialog on the control
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值