文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>rcs的使用方法

rcs的使用方法

时间:2005-12-14  来源:xktop

版本控制的简单在于RCS。

在个人编程和开发方面。rcs还是很有作为的,我个人工作时很喜欢用它来协助,不仅仅是它的简单易用,还有它的方便快捷。

l         rcs:控制RCS存档文件属性。

l         ci:提交文件到存档。

l         co:从存档中读出文件。

l         rlog:输出RCS记录信息。

l         rcsdiff:执行diff比较版本。

l         rcsclean:清除没有人工作或没有改变的文件。

l         rcsmerge:合并两个RCS分支到一个单一的分支。

l         ident:在RCS文档文件中搜索关键词,关键词的格式为$key:txt$形式,可见man手册页的例子。。

一个简单的例子:

xk@linux:~/work/c> mkdir RCS

xk@linux:~/work/c> rcs -i hello.cpp

RCS file: RCS/hello.cpp,v

enter description, terminated with single '.' or end of file:

NOTE: This is NOT the log message!

>> Test file

>> .

done

xk@linux:~/work/c> rlog hello.cpp

RCS file: RCS/hello.cpp,v

Working file: hello.cpp

head:

branch:

locks: strict

access list:

symbolic names:

keyword substitution: kv

total revisions: 0

description:

Test file

======================================================================

xk@linux:~/work/c> vi hello.cpp

...

xk@linux:~/work/c> ci -m"hello world" hello.cpp

RCS/hello.cpp,v  <--  hello.cpp

initial revision: 1.1

done

xk@linux:~/work/c>rlog hello.cpp

RCS file: RCS/hello.cpp,v

Working file: hello.cpp

head: 1.1

branch:

locks: strict

        xk: 1.1

access list:

symbolic names:

keyword substitution: kv

total revisions: 1;     selected revisions: 1

description:

Test file

----------------------------

revision 1.1    locked by: xk;

date: 2005/12/07 13:23:35;  author: xk;  state: Exp;

hello world

xk@linux:~/work/c> vi hello.cpp

...

xk@linux:~/work/c> ci -m"hello" hello.cpp                  

RCS/hello.cpp,v  <--  hello.cpp

new revision: 1.2; previous revision: 1.1

done

xk@linux:~/work/c> rcsdiff -r1.1 -r1.2 hello.cpp         

===================================================================

RCS file: RCS/hello.cpp,v

retrieving revision 1.1

retrieving revision 1.2

diff -r1.1 -r1.2

4c4

<       std::cout<<"hello,world! ";

---

>       std::cout<<"hello! ";

xk@linux:~/work/c>

在上面的例子中我们用到了如下一些命令和选项:

rcs –i file:初始化一个存档文件

rlog file:显示文件的信息

ci –m[msg] file:提交并提出且锁住文件供编辑

co –l file:提出文件并锁住文件供编辑

rcsdiff –r[R1] –r[R2] file:比较不同版本的文件的差别

除了上述命令选项,还有如下一些常用的:

co –r[R] file:提出版本为R的文件

ci –r[R] file:以版本R提交

rlog –r[R] file:显示版本R的文件信息

rcs –t-msg file:修改文件的描述信息,如下:

xk@linux:~/work/c> rcs -t-"hello world" hello.cpp

RCS file: RCS/hello.cpp,v

done

xk@linux:~/work/c> rlog hello.cpp

RCS file: RCS/hello.cpp,v

Working file: hello.cpp

head: 1.2

branch:

locks: strict

access list:

symbolic names:

keyword substitution: kv

total revisions: 2;     selected revisions: 2

description:

hello world

----------------------------

revision 1.2

date: 2005/12/07 13:30:26;  author: xk;  state: Exp;  lines: +1 -1

hello

----------------------------

revision 1.1

date: 2005/12/07 13:23:35;  author: xk;  state: Exp;

hello world

======================================================================

xk@linux:~/work/c>

rcsmerge –p –r[R1] –r[R2] file:合并两个版本的文件到一个文件,并且不影响工作文件而是将结果打印到标准输出。

rcsmerge –r[R1] –r[R2] file:合并两个版本到一个文件,并改变工作文件,如下:

xk@linux:~/work/c> rcsmerge -p -r1.1 -r1.2 hello.cpp

RCS file: RCS/hello.cpp,v

retrieving revision 1.1

retrieving revision 1.2

Merging differences between 1.1 and 1.2 into hello.cpp; result to stdout

#include

int main()

{

        std::cout<<"hello! ";

        return (0);

}

xk@linux:~/work/c> rcsmerge  -r1.1 -r1.2 hello.cpp 

RCS file: RCS/hello.cpp,v

retrieving revision 1.1

retrieving revision 1.2

Merging differences between 1.1 and 1.2 into hello.cpp

xk@linux:~/work/c>

文档的分支结构:

xk@linux:~/work/c> ci -r1.1.1 -m"new b" hello.cpp

RCS/hello.cpp,v  <--  hello.cpp

new revision: 1.1.1.1; previous revision: 1.1

done

xk@linux:~/work/c> rlog hello.cpp

RCS file: RCS/hello.cpp,v

Working file: hello.cpp

head: 1.2

branch:

locks: strict

        xk: 1.2

access list:

symbolic names:

keyword substitution: kv

total revisions: 3;     selected revisions: 3

description:

hello world

----------------------------

revision 1.2    locked by: xk;

date: 2005/12/07 13:30:26;  author: xk;  state: Exp;  lines: +1 -1

hello

----------------------------

revision 1.1

date: 2005/12/07 13:23:35;  author: xk;  state: Exp;

branches:  1.1.1;

hello world

----------------------------

revision 1.1.1.1

date: 2005/12/07 14:10:39;  author: xk;  state: Exp;  lines: +1 -1

new b

...

xk@linux:~/work/c> ci -r1.2.1 -m"new b" hello.cpp

RCS/hello.cpp,v  <--  hello.cpp

new revision: 1.2.1.1; previous revision: 1.2

done

xk@linux:~/work/c> rlog hello.cpp

RCS file: RCS/hello.cpp,v

Working file: hello.cpp

head: 1.2

branch:

locks: strict

access list:

symbolic names:

keyword substitution: kv

total revisions: 4;     selected revisions: 4

description:

hello world

----------------------------

revision 1.2

date: 2005/12/07 13:30:26;  author: xk;  state: Exp;  lines: +1 -1

branches:  1.2.1;

hello

----------------------------

revision 1.1

date: 2005/12/07 13:23:35;  author: xk;  state: Exp;

branches:  1.1.1;

hello world

----------------------------

revision 1.1.1.1

date: 2005/12/07 14:10:39;  author: xk;  state: Exp;  lines: +1 -1

new b

----------------------------

revision 1.2.1.1

date: 2005/12/07 14:14:04;  author: xk;  state: Exp;  lines: +1 -1

new b

======================================================================

xk@linux:~/work/c>

 

排行榜 更多 +
雷电觉醒安卓版

雷电觉醒安卓版

飞行射击 下载
3D幻影飞车最新版

3D幻影飞车最新版

飞行射击 下载
星河一号战队

星河一号战队

飞行射击 下载