`
e3002
  • 浏览: 77674 次
社区版块
存档分类
最新评论

linux上cvs常用命令

阅读更多

登陆cvs: cvs -d :pserver:xuquanxing@ip:/home/cvsroot login 将提示你输入密码,登陆成功后以后在登陆不需要密码

检出整个工程(必须先检出整个工程,才能进行其它的操作)  cvs -d :pserver:xuquanxing@ip:/home/cvsroot checkout mindquiz 在执行update时可以转到本地相应目录直接 cvs update 也可以在其它目录cvs update 目录名

(下面是网络上找到)

1.登陆cvs: cvs -d :pserver:xuquanxing@ip:/home/cvsroot login

Note:pserver是访问方式,如果服务器设置的是口令认证,则是 pserver。       username是  CVS服务器的用户名,可以根据你的设置修改;       the_server_name是CVS服务器的名称或者IP地址;       /home/cvsroot是你的CVS服务器的CVSROOT目录,根据你的CVS服务器设置做修改或者询问管理员.

这时候cvs会问你口令,请把你在CVS服务器上的口令敲进去: Passwd:xxxxxxxx

2. 提交项目--import    cvs import [-options] repository vendortag releasetag... Note: 该命令将当前目录下的所有文件(包括子目录)导入源代码储存库。     repository :项目名称,在CVS服务器上会创建以这个名字命名的仓库。     vendortag :  项目分支的总标记。(不常用)     releasetag :标识文件的输入层次的标记。 (一般用start)   使用import提交项目的时候,CVS会要求对项目进行说明。在默认状态下,CVS会弹出文本编辑器。用户也可以用-m “log_message”来输入

说明信息。

例如 $cvs import -m "upload the first time as new module" judecvs v_0_0_1 start

提示:import 一般在第一次导入module时使用。后期修改文件后可直接使用commit命令提交修改的文件。

3. 从CVS导出项目--checkout    cvs checkout [options] modules...    此命令将源代码储存库中已有的项目导出到当前目录。     modules :项目名称例如,从仓库中检索出judecvs项目的源文件.  $cvs  checkout  judecvs

4.CVS 主要命令---update 更新当前工作目录中的文件   cvs update [-options] [files...]   此命令比较指定CVS源码库中的文件和当前目录下的文件,如果CVS源码库中有更高版本的源文件,则更新当前目录下的文件。此命令只有在

checkout命令使用过后才能使用。    在执行update命令时,CVS并不是简单的将新版本覆盖当前文件,而是试图将新版本所做的修改添加到当前文件中去。如果发生冲突,CVS会

以字符串 “<<<<<<”和“>>>>>>”来表示冲突发生。这时候你可以修改文件,重新提交。提示:如果你已经做过一次checkout了,那么不需要重新checkout,只需要进入cvstest项目的目录,更新一把就行了:  例如: $cd  judecvs  $cvs  update

5.CVS 主要命令---status 如果你不想直接更新,只是想看看有没有更新的东西,那么:  $cvs  status 会给每个文件有一份状态报告,类似这样:  ================================================== File:  client.c                    Status:  Up-to-date        Working  revision:        1.1.1.1  'Some  Date'        Repository  revision:  1.2          /home2/cvsroot/judecvs/client.c,v 

这里最重要的就是  Status  栏,这里总共可能有四种状态:  Up-to-date:表明你要到的文件是最新的.  Locally  Modified:表明你曾经修改过该文件,但还没有提交,你的版本比仓库里的新.  Needing  Patch:表明有人已经修改过该文件并且已经提交了!你的版本比仓库里的旧.  Needs  Merge:表明你曾经修改国该文件,但是别人也修改了这个文件,而且还提交给仓库了!

6.CVS 主要命令---commit 保存修改到CVS中 cvs commit  [-lnR]  [-m 'log_message' | -f file] [-r revision] [files...]    此命令将当前目录下的源代码与CVS中最新版本比较,并进行更新。    [-m ‘log_message‘ ] :输入修改说明。    [-r revision] :指定版本。    [files...] :指定修改文件。

$cvs  commit  -m  "add XXX function"   client.c

系统会提示 CVS: ---------------------------------------------------------------------- CVS: Enter Log.  Lines beginning with `CVS:' are removed automatically CVS: CVS: Committing in . CVS: CVS: Modified Files: CVS:    client.c CVS: ----------------------------------------------------------------------

退出后,系统询问是否continue,输入c,则完成checkin Log message unchanged or not specified a)bort, c)ontinue, e)dit, !)reuse this message unchanged for remaining dirs Action: (continue) c Checking in client.c; /home2/cvsroot/judecvs/client.c,v  <--  client.c new revision: 1.2; previous revision: 1.1 done

如果CVS上文件已经有其他人更新,也就是我当前工作的不是最新版本,系统提示commit失败,这时候需要先update,然后把整合文件再commit. cvs server: Up-to-date check failed for `client.c' cvs [server aborted]: correct above errors first! cvs commit: saving log message in /tmp/cvsCEjA9N

提示:修改文件之前先update或者先查看文件状态,确认当前工作版本是最新版本。

7.添加文件到项目中---add    cvs add [-k kflag] [-m 'message'] files...     此命令并不真正添加文件,只是将文件注册到项目中,要真正添加文件,还要使用commit命令。例如: $cvs add -m "test add" testadd.c

提示: cvs server: scheduling file `testadd.c' for addition on branch `v_0_0_2' cvs server: use 'cvs commit' to add this file permanently

$cvs commit

同commit过程一样,CVS将testadd.c添加到项目中

8.CVS 主要命令---remove 从项目中删除文件   cvs remove [-k kflag] [-m 'message'] files...    和add命令一样,此命令并不真正删除文件,只是将文件从项目中取消,要真正删除文件,还要使用commit命令。   e.g.   $rm testadd.c   $cvs rm testadd.c 系统提示 cvs server: scheduling `testadd.c' for removal cvs server: use 'cvs commit' to remove this file permanently

$cvs  commit testadd.c

此时,CVS才将testadd.c从项目的最新版本中删除,但是如果它有以前的版本,以前版本依然存在。

 

cvs update的信息报告 "cvs update" 后在信息框里会列出你的操作,你的文件update的情况,这里是CVS使用的所有其它单字符信息性消息的列表: U [path] 在本地机更新get到了服务器上最新的或者最新版本的文件。 P [path] 像“U”一样,只是在update时你的网络带宽少的情况下CVS服务器所出现的提示。 M [path] 这意味着您已经修改过该文件了;而且,有可能资源库中新的更改已成功地合并到该文件。 C [path] 错误警报,"C" 字符表明该文件存在冲突,需要在使用 "commit" 提交前解决这冲突。 A [path] 该文件是计划要添加的,即添加了但尚未提交,这时你还使用update命令,CVS就会有这个提示,当你 "commit" 时,它被正式添加

到服务器库中,问题解决。 R [path] 象 "A" 一样,"R" 让您知道该文件计划要删除的,即删除了但尚未提交,这时你还使用update命令, CVS就会有这个提示,当你 "

commit" 后,该文件就会从服务器库中删除,问题解决。

分享到:
评论

相关推荐

    Linux下常用cvs命令整理.docx

    Linux下常用cvs命令整理.docx

    linux下CVS使用帮助

    CVS的帮助手册,有linux下使用cvs的常用命令详细说明

    GIT安装文件取代SVN和CVS

    与常用的版本控制工具 CVS, Subversion 等不同,它 采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的 速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git...

    linux程序设计(第三版)

    尽管描述的绝大多数命令和工具可同时用于LINUX和UNIX,但所有shell会话都是在Mandrake和RedHat LINUX系统上获得的。 主要内容 本书分3部分:第Ⅰ部分“有效地使用LINUX和UNIX”,第Ⅱ部分“LINUXUNIX平台上的软件...

    Git常用命令1.0正式版.txt

    与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git ...

    linux基本操作

    1.4.1. 常用命令、设置和操作 6 1.4.2. Ctag的用法 8 1.4.3. Taglist插件 9 1.4.4. Cscope的用法 10 2. Shell命令 12 2.1. 添加/修改环境变量 12 2.2. 设置显示当前的日期 13 2.3. du 13 2.4. fdisk 14 2.5. find的...

    RED HAT LINUX 6大全

    14.8.1 在Linux客户上使用smbclient 252 14.8.2 在Linux客户上加载共享 253 14.8.3 在Windows客户上加载共享 253 14.9 公用smb.conf配置选项 253 14.9.1 特殊约定 254 14.9.2 read Only=Versus writeable=Versus ...

    Linux程序设计 第4版.haozip01

    10.2 常用调试技巧 362 10.2.1 有漏洞的程序 362 10.2.2 代码检查 364 10.2.3 取样法 365 10.2.4 程序的受控执行 367 10.3 使用gdb进行调试 368 10.3.1 启动gdb 368 10.3.2 运行一个程序 369 10.3.3 栈跟踪 ...

    Linux程序设计 第4版.haozip02

    10.2 常用调试技巧 362 10.2.1 有漏洞的程序 362 10.2.2 代码检查 364 10.2.3 取样法 365 10.2.4 程序的受控执行 367 10.3 使用gdb进行调试 368 10.3.1 启动gdb 368 10.3.2 运行一个程序 369 10.3.3 栈跟踪 ...

    Linux高级路由和流量控制

    9.6.2. 常用到的过滤命令一览 57 9.7. IMQ(INTERMEDIATE QUEUEING DEVICE,中介队列设备) 58 9.7.1. 配置范例 58 第10章 多网卡的负载均衡 60 10.1. 告诫 61 10.2. 其它可能性 61 第11章 NETFILTER和IPROUTE...

    Git-1.7.0.2-preview20100309

    与常用的版本控制 CVS,Subversion等不同,它采用了分布式版本库的方式,不毕服务器断软件支持,使源代码的发布和维护极其方便。Git的本地查询、搜索,补丁制作、提交和应用,项目跟踪,分支合并等功能,可以大大...

    WINCVS和CVSNT安装包

    方法二:通过命令来建立cvs -d /usr/local/cvsroot init 2)配置服务器缓存目录(-T) windows平台下默认:c:\windows\temp linux平台下默认:/tmp 3)配置验证方式: 建立好默认管理目录后,会在其目录里产生...

    Ubuntu_10.04_安装手记

    常用命令与快捷键 文件系统中的系统文件夹说明 Ubuntu中的隐藏文件或文件夹方法 三种安装方法 apt-get/dpkg/sources pack Ubuntu 9.04 中 F1 帮助摘要 硬盘分区 连接网络 设置软件源 安装中文包 启动引导菜单调整 ...

    Git权威指南PDF完整版

    Git权威指南 目 录 前 言 第1篇 初识Git 第1章 版本控制的前世和今生/ 2 1.1 黑暗的史前时代/ 2 1.2 CVS—开启版本控制大爆发/ 5 ...34.1.1 Linux下cvs2svn的安装/ 492 34.1.2 Mac OS X 下 cvs2svn 的...

    Git-1.7.6-preview20110708(windows版)

    与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git ...

    Git-1[1].7.4-preview20110204.exe

    与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git ...

    使用Subversion进行版本控制(针对 Subversion 1.4)

    在分支上工作 分支背后的关键概念 在分支间复制修改 复制特定的修改 合并背后的关键概念 合并的最佳实践 手工跟踪合并 预览合并 合并冲突 关注还是忽视祖先 合并和移动 常见用例 合并分支到另一分支 取消修改 找回...

    SVN使用手册中文版快速入门

    在分支上工作 分支背后的关键概念 在分支间拷贝修改 拷贝特定的修改 合并背后的关键概念 合并的最佳实践 手工追踪合并 预览合并 合并冲突 关注还是忽视祖先 常见用例 合并一条分支到另一支 取消修改 找回删除的项目 ...

    SVN使用手册中文版.chm

    在分支上工作 分支背后的关键概念 在分支间拷贝修改 拷贝特定的修改 合并背后的关键概念 合并的最佳实践 手工追踪合并 预览合并 合并冲突 关注还是忽视祖先 常见用例 合并一条分支到另一支 取消修改 找回删除的项目 ...

    eclipse 开发c/c++

    当进入 C/C++ Projects 视图,选择您的项目,单击鼠标右键并在 Build Settings 选项卡上选择 Properties 之后,就可以使用更多的用于构建项目的常用选项。这些选项主要影响因遇到编译错误而使构建停止时所发生的情况...

Global site tag (gtag.js) - Google Analytics