原创 Windows xp下CVS初学者使用指南

2009-8-11 19:03 6186 4 5 分类: MCU/ 嵌入式

Windows xpCVS初学者使用指南<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


本文是写给希望能够马上通过cvs来进行更好的开发管理的小型团队或个人。你一但使用了cvs你就会发现你已经离不开它了。网上有很多有关windows下配置使用cvs的文章,但比较乱,不适合初学者。所以本文一步步介绍如何在windows操作系统下安装和配置cvs服务器,并且加入了尽量多的图片。


以下是本文要介绍的主要内容:


1、服务器端cvsnt的安装;


2cvs代码仓库的创建;


3、配置cvs帐号;


4、客户端wincvs的安装与配置;


5、使用Tortoise CVS使用


 


(1)  服务器端cvsnt的安装


到网址http://www.march-hare.com/cvsnt/features/cvsnt/下,选中Free Download 下的Windows Server 点击下载.我这下载的是cvsnt-server-2.5.04.3510.msi。安装时选择Typical就行。


装完cvs服务端后重启系统。


(2)  cvs代码仓库的创建


先在windows下创建一个文件夹做代码仓库用。打开刚安装的CVSNT Control Panel。在Repository configtion选项卡中点击ADD,在location处输入仓库文件夹D:/cvs_code。如下图:


<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />


49f57816-f424-49e3-85ae-c6bd967cca92.jpg 


确定后会在D:/cvs_code文件夹中产生目录CVSROOT


其他设置采用默认值即可。


 


 


 


3)配置cvs帐号


先说下CVSNT的用户验证方式,CVSNT的用户验证方式分两种:Windows系统用户与CVSNT用户共存的混合验证方式,及CVSNT用户 单一验证方式,默认工作在混合验证方式下。各个资源库所使用的 验证方式及用户配置由其目录下CVSROOT里的配置文件决定,其中有几个比较重要的文件如下。先了解一下,后面配置时会用到。


 


1config文件


控制CVSNT的验证工作方式的就是config文件,注意该文件最前面的两行:
#Set this to `no" if pserver shouldn"t check system users/passwords
#SystemAuth=yes


第二行就是我们要修改的内容,默认状态是被注释掉的,SystemAuth有两个值yesno


yespserver将使用Windows系统用户和CVSNT用户来共同验证(若CVSNT用户未定义,则用Windows系统用户来进行验证),默认为yesCVSNT用户在后面将要介绍的passwd文件中定义。


no:只使用CVSNT用户来进行验证。


该文件可以在客户端进行修改,因此我们可以将其checkout出来将第二行改为SystemAuth=no,并commitCVSNT上就可以启用单一验证方式了.


注意:启用单一验证方式后原来的Windows系统用户将变为无效,因此要注意执行该步骤的时机。


2 admin文件


该文件保存CVSNT管理员用户列表,内容很简单,形式如下:
User1
User2
User3
每一行定义一个管理 员用户,默认时没有该文件,但你可以在客户端自己添加并add上去,再commitCVSNT上,但是光有这个文件还是不会生效的,还要将其添加到 checklist文件中,使CVSNT能够读取该文件的内容,在checklist中添加文件列表的格式为:


[空格]文件名 出错信息


其中文件名前的空格必须要有的,不然会出错。
我们可以先添加admin文件到CVSNT中,再修改checklist文件commit,就可以使admin文件生效了。


3passwd文件


服务器工作在CVSNT用户单一验证方式下的时候,这个文件定义了CVSNT的用户信息,这里面保存着用户名,用户密码,以及别名信息。默认状态下 没有该文件,但是我们可以在CVSNT还工作在混合验证方式下时,用系统管理员登录,通过添加用户命令来让CVSNT自动建立一个passwd文件。


添加用户的命令的示例:


cvs passwd –r administrator –a cvsadmin


之后系统提示输入密码,输入后服务器会新建一个passwd文件。


该文件的内容很简单,形式如下:


cvsadmin:fqr1fS4gDghrt:administrator
kid:aTXRfS31Bm6JA
mystique:Yna4QcXz9dEqd


以第一行为例:cvsadmin为用户名,fqr1fS4gDghrtCVS使用UNIX标准加密函数对密码进行加密后的结果,administrator为该用户的别名,当使用混合验证方式时对应Windows系统用户名。


注意:这个文件是不能在客户端进行修改的,不能checkout出来。


4group文件


该文件定义CVSNT中组信息,同组里的用户拥有一样的权限,对组权限的修改和对用户权限的修改一样。


group文件的内容为


administrators:cvsadmin kid mystique
users:User1 User2 User3


可以看到该文件的内容也很简单,组名:用户名,多个用户名之间用空格隔开。


Group文件可以在客户端修改,不用修改checkoutlist这个文件,系统会自动使其生效。


作为组里面的特定成员可以赋给特定的权限。


在了解以上文件作用后,接下来要进行具体配置:


(一)   测试服务器


1.点击 开始菜单->run->cmd,进入命令行环境
2.
输入Cvs ,会出现相应的帮助,如果没出现,说明环境变量中的Path值没有设置,你可以手动设置到你的Cvs.exe文件所在的目录
3.
输入cvs version ,显示当前CvsNt版本号:
Concurrent Versions System (CVSNT) 2.5.04 (Zen ) build 3510 (client/server)
4.
输入 set cvsroot=":sspi:localhost:/cvs"_code


5.cvs login
  
输入你的Windows登陆密码
6.cvs ls
   
显示所有module,至少会有一个CVSROOT
7.
如果以上步骤都没有错误,说明CVSNT配置成功


(二) 添加用户账号
1、进入命令提示符:


cd  c:\ #进入C
mkdir work #
创建测试工作目录
cd work #
进入work工作目录


2、因为此时为混合验证模式,可以不用不用登陆直接进行checkout


cvs co CVSROOT #检出CVSROOT目录:


此时可以看到c:/work目录下多了一个cvsroot文件夹,他是服务器仓库即D:/cvs_code/cvsroot 的一个部分拷贝。


3、添加CVSNT系统管理员用户,此时会提示设置用户密码:


cvs passwd -r administrator -a cvsadmin #创建cvs账号
输入密码        #注意:输入的密码不会显示
在此输入密码


注:将administrator改为你的系统登录用户名


4、修改CVSROOT访问权限:


cd CVSROOT #进入c:\work\CVSROOT
cvs chown cvsadmin //
更改所有者为
cvsadmin
cvs chacl -u default -a none //
默认权限为
none  
cvs chacl -u cvsadmin  -a all //
设置cvsadmin权限


5、设定cvsadminCVS管理员。


c:\work\CVSROOT目录下新添一个名为admin的文件。在里面将每一个想要升为管理员的CVS帐户的帐户名写到文件中,每行一个帐户名。当然admin文件只有放到服务器,cvsadmin的升迁才能生效。但是,仅仅是这么将admin文件提交上去是不能起作用的。在提交它之前,必须将admin的信息添加到heckoutlist文件中。checkoutlist的格式在其文件中有介绍,是空格文件名 空格 出错信息回车符


(1)    c:\work\CVSROOT目录下新添一个名为admin的文件(无后缀)。用记事本打开输入 cvsadmin + 回车


(2)     命令行中执行:
cvs add admin     #
admin移入代码库,但没用真正移入
cvs commit admin  #
确认把代码移入 CVS commit cvs ci都行


注意:运行后会弹出报告,关闭后按回车继续。


(3)  修改c:\work\CVSROOT\checklist文件,在该文件末尾添加一行:


[空格]admin [空格] error message[换行]


注意:admin前的空格不能少。


命令行中输入:


cvs commit #cvs ci也行


 


4 其他操作


经过以上步骤,可以说用户配置已经基本完成了,CVSNT可以很好的工作了。进一步的管理可使用以下命令:


添加用户: cvs passwd -a username,使用时不必理会需要添加别名的提示。


修改用户权限:cvs chacl  -u username –a r|w|c|n|a,(rRead wwrite ccontrol nnone a:all


修改验证方式:将confing中的添加SystemAuth=no 此时将进入单一验证模式。这时cvs命令要加 -d :pserver:cvsadmin@localhost:/cvs_code选项比如cvs ls命令要改为
cvs -d :pserver:cvsadmin@localhost:/cvs_code ls
也可以再系统中添加系统变量和用户变量变量名CVSROOT 变量值:pserver:cvsadmin@localhost:/CVS_Root


要添加组管理,只需同添加admin步骤一样,按照格式要求新建group文件即可。


ok,差不多就是这些,有错还请各位帮忙指出,还在学习ING


 


 


(四)客户端wincvs的安装与配置


 


1到网址http://www.march-hare.com/cvsnt/features/cvsnt/下,选中Free Download 下的Windows client  点击下载.我这下载的是suite-client-trial-2.5.04.3510.msi。安装时选择Typical就行。装完cvs服务端后最好重启系统。


2 在客户端,创建一个文件夹用来存放管理文件。例如:C:\work\client


3 打开WinCVS,在菜单栏中点击“View”->“Brower Location”->“Change”


将步骤2)的文件夹D:\cvsclient\admin引入。


4 点击菜单栏中的“Admin”->“Login”弹出对话框如图所示:


CVSROOT中的格式如下:


:pserver:username@hostname(或IP地址):CVS仓库NAME


下面我解释一下上面的字符串的含义:


1 “pserver” 是最常用的一直CVS远程访问方式;


2 “username”是指在服务器上登录的用户名;


3 “hostname” CVS服务器的主机名,也可以是它的IP地址;


4 “CVS仓库NAME” 是一个CVS仓库的名字,用于区分你要访问的是哪个仓库(因为一个CVS服务器上可能有多个不同仓库)。


这里实际输入为::pserver:cvsadmin@localhost:/cvs_code



fdc715fa-f914-408b-908c-fc46e5952182.jpg


5 弹出对话框,输入密码.


即可看到 ***** CVS exited normally with code 0 *****


表示登录成功!


6 “Remote”->“Checkout module…”,弹出如图所示的对话框



e8c5393a-2ae8-4a1d-bbbf-bfeb804334d1.jpg


Module name…中输入CVSROOT ;local dolder…中输入工作目录;CVSROOT 同上


7 在左边的根目录下将出现CVSROOT目录。再用文件管理器在client目录下创建你的项目。


例如:C:\work\client\myproc1 myproc1随便放个文件比如readme.txt


8 回到WINCVS,右击根目录->“Reload view”,刚刚您所建的项目将出现在根目录下。


      如果没有“Reload view”就按F5,或者右键在Customize this menu..中添加一个


9“Remote”->“Import Module”,确定,按默认即可。如出现


***** CVS exited normally with code 0 *****


这说明你的项目已经引入到CVS Server了。


10)用文件管理器将步骤7)中的目录C:\work\client\myproc1删除,这步是必须的。


11Checkout Module,重复步骤6)只是将Module name中输入myproc1就能将刚放入的工程取出。


 


(五)使用Tortoise CVS


在安装完cvs client之后会发现在wincvs下还有个客户端工具Tortoise CVS,这是个使用跟方便的工具,完全可以代替wincvs.其使用也相当方便,装完时以嵌入到资源管理器中了。


1.       在资源管理器中新建一个文件夹c:\work\myproc2,右击->CVS->创建新模块….


cvsroot中输入:pserver:cvsadmin@localhost:/cvs_code 其它自动会产生。


如果不出意外的话,一个新的模块test就建立了



3f7aff9f-3a75-4549-adb0-f449c2767610.jpg


2.建立工程文件并提交。在c:\work\myproc2中建立hello.c内容如下:


Void main()


{


       Printf(“hello vcs!”);


}


选择该文件右键添加。然后右键点提交。


这样就上传到服务器了


 


4.测试Checkout功能:


为了看到变化先删除c:\work\myproc2.


1)        进入c:\work 右键点cvs取出弹出对话框。


2)        cvsroot填入:pserver:cvsadmin@localhost:/cvs_code


3)        点“获取列表”.选着获取的列表中的myproc2并点击确定


这是可以看到当前目录有一个myproc2文件夹了


 


5. 测试修改功能


选中c:\work\myproc2下的hello.c 右键点击“编辑”后用记事本打开修改为:


Void main()


{


       Printf(“hello vcs!”);


       Return ;


}


右键点“提交”。修改完成。


6.版本分支


右键c:\work\myproc2\hello.c选着cvs->版本分支图..弹出分支图。右键有很多功能,比如版本比较,获取特定版本,添加标签等。


注意:比较文件时会弹出对话框选着第三方比较工具。Client程序装完时会有一个winmerge.


"C:\Program Files\CVSNT\WinMerge\WinMergeU.exe"选着它就行。



9c7600be-5712-47cc-b943-05e279c6a8cf.jpg


For more information about CVS & WINCVS, please refer to the following links:


CVS使用手册: http://www.chedong.com/tech/cvs_card.html


CVS中文手册: http://man.chinaunix.net/develop/cvsdoc_zh/


CVS FAQ: http://ximbiot.com/cvs/wiki/index.php?title=CVS_FAQ


Concurrent Versions System: http://www.nongnu.org/cvs/


How to Use WinCVS: http://www.devdaily.com/wincvs/HowToUseWinCVS/


 

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户377235 2013-6-28 20:42

The mortgage loans seem to be important for people, which would like to ground their company. In fact, it is easy to get a college loan.
相关推荐阅读
用户212863 2009-07-22 16:00
2440LCD控制器详细配置
S3c2440ALCD控制器配置实例<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />...
用户212863 2009-07-09 16:37
Nor Flash 学习笔记
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />Nor Flash 学习笔记实验验平...
我要评论
1
4
关闭 站长推荐上一条 /3 下一条