cvs 使用

cvs  

2007-09-19 11:42:05|  分类: 默认分类|字号 订阅

一. login登录
cvs login
会提示要求输入密码

二. logout 退出
cvs logout

三. import 将源文件导入到cvs仓库
cvs import [-d] [-k subst] [-I ign] [-m msg] [-b branch] [-W spec] repository vendor-tag release-tags...

-d    将文件的修改时间作为导入时间
-k sub   设置默认的RCS关键字替换模式
-I ign   忽略文件(使用!重置)
-b bra   分支的标识
-m msg   日志信息
-W spec   包装指定行

使用范例
(1)将一个新项目导入到仓库
   1.假设项目在本地文件夹testproject下,进入该目录,清除里面所有不需要提交的内容
   2.执行命令
    cvs import -m"test log message" -ko test/aoxj/ testprojuect test
   其中test/aoxj/指在仓库中的位置,testprojuect是项目名称,test发布标识
   3.可以用check 从仓库中获取这个新导入的项目
    cvs co test/aoxj/testproject


(2)创建项目的另一个方法:建立一个空仓库在添加一个新项目
   1.迁出仓库的顶级目录
    cvs co -l -d tmp .
   2.在这个迁出的工作区中建立新项目,使用add命令加入仓库
    makedir newproject
    cvs add newproject
   3.测试删除这个签出的工作区
    cvs release -d tmp
   4.再次签出项目
    cvs co newproject

四. add 添加新文件/目录
cvs add [-k rcs-kflag] [-m message] files...
-k 使用rcs-kflag添加具有指定kflag的文件,通过使用"-kb"添加二进制文件到仓库中
-m 使用message来创建日志

使用范例:
(1)添加二进制文件
cvs
 add -kb -m"add a binary file" test.doc
如果不使用-kb,则默认是按照text格式提交,会破坏文件。
(2)忘记-kb提交进制文件的补救
   如果是进行了add但是还没有commit,则可以使用实现方法:
1.忘了加-kb
   cvs add test.doc
2.本地改名
   mv test.doc temp.doc
3.删除文件
   cvs remove test.doc
4.取回原来的文件
   mv temp.doc test.doc
5.再次add并commit
   cvs add -kb test.doc
   cvs commit test.doc

   如果是commit之后才发现错误,最安全的方式是修改CVS仓库中的标记,然后再更新cvs仓库.

1.错误的commit了文件
   cvs add test.doc
   cvs commit test.doc
2.重置cvs仓库的标记
   cvs admin -kb test.doc
3.重置本地工作区的标志
   cvs update -A test.doc
4.从正确的文件覆盖本地工作区的文件 
   cp /**/test.doc test.doc
5.提交到仓库
   cvs commit -m "new binary file" test.doc

五.admin 管理仓库
cvs admin rcsoptions ...
-k 使用"rcs-kflag"来改变与一个文件相关的标记,常用于将文件的状态修改为二进制(使用"-kb")



六. release 删除本地模块
cvs release [-d] directories ...
-d 删除给定目录的本地副本

使用范例:
    cvs release -d test/aoxj/testproject
   这样会将本地工作区中的test/aoxj/testproject目录删除,但是不影响cvs仓库中文件

七. remove 从cvs仓库中删除条目
cvs remove [-flR] [files ...]
-f 在移除之前删除文件
-l 只有本目录,不包括子目录
-R 操作应用于子目录

使用范例:
(1) 从cvs仓库中删除文件
   cvs remove a.txt
   会报错,表示该文件在本地工作区中依然存在,需要先删除本地工作区中的文件
    cvs server: file `a.txt' still in working directory
    cvs server: 1 file exists; remove it first
   可以手工用rm命令删除,也可以使用-f参数在提交cvs remove命令前先删除文件
    cvs remove -f a.txt
   会出现提示
    cvs server: use 'cvs commit' to remove this file permanently
   表示本地副本已经被删除,要求用commit命令提交到仓库,如果这个时候使用update
   明亮,会看到
    R a.txt
   注意a.txt前面的R.最后在用commit提交删除仓库中的文件:
    cvs commit a.txt
(2)从cvs仓库中删除文件夹
   cvs remove -fR foldername
   可以删除foldername文件夹下的文件,但是无法删除目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值