分类: C/C++
2012-08-10 14:13:12
RCS使用当前路径下的RCS目录来存储管理的文件
1)在目录下建立RSC源代码仓库
$mkdir RCS
2)初始化RCS的控制文件
$rcs -i hello.c
3)把文件加入到RCS仓库
$ci hello.c
>>. //输入.以结束此命令,文件加入到仓库后,自动删除原文件
4)取出文件
$co hello.c //只读的,-l 加锁取出,可编辑
5)修改后加入到RCS中,为防止删除-l 或 -u (unlock)
$ci -l hello.c
6)取出指定版本
$co -l -r1.1 hello.c
CVS(Concurrent Version System)
1)初始化CVS
$cvs -d /usr/local/cvsroot init //或者在shell里设定一个CVSROOT的环境变量
$export CVSROOT=/usr/local/cvsroot //设置环境变量
2)向CVS仓库导入指定的项目文件
$cvs import -m "start my project:Netants" netants yoyo start
//默认情况下,将当前目录下的所有文件导入
//netants 是这个项目被CVS存储时的路径名
//最后两个字符串设定了两个标记(tag)
3)从CVS中导出项目
$cvs checkout netants
//CVS在当前目录下建立一个叫做netants的目录,而且还多了CVS的目录
4)保存修改到CVS中
$cvs commit -m "Made some useful changes on some files"
//扫描并比较此目录下的现有文件,做了修改的文件将被更新,CVS只保存了不同版本间的差异
5)添加文件到项目中
$cvs add
$cvs commit -m "Add two files: and "
6)从项目中删除文件
$rm netants.h
$cvs remove netants.h
$cvs commit netants.h -m "Delete a file."
//CVS只是删除了当前版本,它以前的版本依然存在,除非它恰好仅有1.1版本
7)更新当前工作目录中的文件,使用命令update
$cvs update -j 1.5 -j 1.3 netants.c //忽略从版本1.3到版本1.5所作的修改
8)比较文件的不同
$cvs diff netants.c
GIT用于linux内核开发的版本控制工具,采用了分布式版本库的方式,不必服务端软件支持,使源代码的发布和交流极其方便
#cvs -d /home/public/repos init //创建CVS仓库
#export CVSROOT=/home/public/repos //导出库路径到环境变量CVSROOT
#cvs import -m "this is a test" test/ test start //向CVS仓库导入指定的项目文件,在当前路径下
#cvs checkout test //check out项目
#cvs diff //显示修改的信息
#cvs commit命令 //将改动提交给CVS
#cvs update hello.c //将源码文件同步到最新的版本
#cat hello.c //查看是否用冲突
#cvs rdiff //查看设定版本以来的所有改动信息
#cvs update helloworld.c //更新指定文件
#cvs update -r1.1 hello.c //通过CVS恢复老版本代码
#cvs add newfile.c //添加文件到CVS库中
#cvs ci -m "this is new file"
#rm newfile.c //删除文件从CVS库中
#cvs rm newfile.c
#cvs commit -m "delete newfile"
#cvs export -D now helloworld //导出正式代码发布版本
#export CVSROOT=:pserver:cvsroot@192.168.0.1:/home/public/repos
#cvs login
使用gcvs与wincvs客户端登陆cvs服务器