• <dl id='rbdtb'></dl>

      1. <ins id='rbdtb'></ins>
        1. <tr id='rbdtb'><strong id='rbdtb'></strong><small id='rbdtb'></small><button id='rbdtb'></button><li id='rbdtb'><noscript id='rbdtb'><big id='rbdtb'></big><dt id='rbdtb'></dt></noscript></li></tr><ol id='rbdtb'><table id='rbdtb'><blockquote id='rbdtb'><tbody id='rbdtb'></tbody></blockquote></table></ol><u id='rbdtb'></u><kbd id='rbdtb'><kbd id='rbdtb'></kbd></kbd>

          <code id='rbdtb'><strong id='rbdtb'></strong></code>
          <span id='rbdtb'></span>
            <acronym id='rbdtb'><em id='rbdtb'></em><td id='rbdtb'><div id='rbdtb'></div></td></acronym><address id='rbdtb'><big id='rbdtb'><big id='rbdtb'></big><legend id='rbdtb'></legend></big></address>

            <i id='rbdtb'><div id='rbdtb'><ins id='rbdtb'></ins></div></i>
            <i id='rbdtb'></i>

          1. <fieldset id='rbdtb'></fieldset>
          2. Linux下常用cvs命令整理

            • 时间:
            • 浏览:12
            • 来源:124软件资讯网

                1.登录:

                $export CVSROOT=:pserver:username@the_server_name:/home/cvsroot

                Note:pserver是会见方式 ,若是服务器设置的是口令认证  ,则是 pserver 。

                username是 CVS服务器的用户名  ,可以凭据你的设置修改;

                the_server_name是CVS服务器的名称或者IP地址;

                /home/cvsroot是你的CVS服务器的CVSROOT目录  ,凭据你的CVS服务器设置做修改或者询问治理员.

                上岸CVS服务器:

                $cvs login

                这时间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 co

                cvs up filename 提交修改

                cvs ci filename 确认修改

                cvs log filename 察看修他日志

                cvs st filename 察看文件状态

                cvs rm filename 将某个源文件物理删除

                在linux上使用cvs下令

                1)上岸CVS服务器:

                cvs -d :pserver:username@host:/$CVSROOT login

                然后系统会提醒你输入密码  。或直接使用:

                cvs -d :pserver:user:pwd@host:/CVS login

                2) checkout:

                cvs -d :pserver:host:/CVSROOT checkout projectName

                3) 若是想省略上面的-d以及服务目录 ,执行:

                export CVSROOT=:pserver:user@host:/cvsroot

                4) update:

                cvs update

                cvs update -C (override and update)

                5) cvs status: 显示当前文件的更新状态.