写程序多了后,自然就有使用版本控制系统的需求。虽然现在git很火很牛,但像我这小菜级别的程序猿,目前还没写过啥大程序,所以杀鸡焉用宰牛刀,用那据说很古老的RCS就足矣了,只在本地进行控制,简单易用。
安装的话直接从相应linux发行版的源里安装就行。我的gnu/debian是sudo apt-get install rcs.
1.建立一个文档目录
rcs使用很简单,需要在那个目录工作,就在哪里建立一个rcs目录即可,无需多余配置
$mkdir RCS
2.创建和初始化rcs文件。比如那个用到烂的hello, word
$rcs -i hello.c
之后会让输入一些描述,最后用独占一行的点号"."结束。之后ls RCS可以看到生成了一个名为hello.c,v的文件
3.检查进出
$co hello.c #全名应该叫check out 揪出来
$ci hello.c #这个是check in 扔进去
co使用时一般"-l"选项,表示上锁(lock);相对的是"-u"选项,不上锁(unlock),这个是默认。区别在于,上锁后,出来的那货有写权限,而默认不上锁是没有写权限的。一般都是检出继续编写,此时其他用户是没法编辑它的,所以长加上"-l"选项。
可以加"-r"选项指定版本,以检出查看,比如
$co -r1.2 hello.c
ci如果不加选项,默认会检入之后删除原来的文件,毕竟留着没啥用了。"-l"和"-u"选项都会留下原来的文件,区别是"-l"上锁,留下的文件有写权限,"-u"留下的是只读的。
我是这样记的:版本文件上了锁,外边的那货就可以放心大胆的被乱编辑了,所以有这副本有写权限。
4.查看历史记录rlog
$rlog hello.c
会显示各版本的修改时间、作者、文档描述等信息
5.比较版本间差异
用命令rcsdiff -r[version] filename,比如已经检出了1.5版,要和之前的1.4版比较
$rcsdiff -r1.4 hello.c
参考资料
http://man.chinaunix.net/linux/how/RCS-1.html
http://book.51cto.com/art/200804/69725.htm
http://www.gnu.org/software/rcs/manual/html_node/index.html
http://users.ninthfloor.org/~ashawley/rcs/tichy1985rcs/html/