1.如何设置 cvs ?
2.CVS系统简介
如何设置 cvs ?
cvs作为流行的开源版本控制系统,是建立在rcs基础上的,在使用之前需要进行配置,主要的配置步骤如下:
1、执行$cvs -d $HOME/cvs(源代码库的位置,可换) init
init 命令创建了目录并把一系列用于管理源代码库的北海到昆明源码文件存放到了CVSROOT下,但是绝对不能随便编辑这些文件,都则会让你的原代码库无法使用。
2、设置环境变量:export CVSROOT=$HOME/cvs,或者将其放入$HOME/.bash_profile文件中,这样每次开机都能自动设置。
再接下来就可以将源代码文件(你的文章聚合 源码项目)交给cvs控制了,使用cvs 的import命令:
cvs import [-d][-k subst][-r ign][-b branch][-w spec] repository vendor-tag release-tags...
-d:用每个导入文件的最后修改时间作为cvs导入时间
-k sub:设置rcs关键字的默认替代模式
-I ign:忽略文件列表
-b bra:指定开发商的分支id
-m msg:记录导入时的消息
repository:从原代码库repository导入文件
vendor-tag:原代码提供者的名字
release-tags:指定用于某个特殊发布的符号名
假定你的文件位于/usr/src/neoshine/BUIld/backup-2.0/src,而你想让他们导入到$CVSROOT中去:
cd /usr/src/neoshine/BUIld/backup-2.0/src
cvs import -m "Initial import backup tool" chap start
为了证实原代码库可以工作,可以将usr/src/neoshine/BUIld/backup-2.0/src改名,然后将原代码检出,用diff比较一下,会发现唯一的区别是cvs目录是checkout创建的。原代码检出后,用户应该只编辑检出的原代码,因为检出的代码已经处于cvs控制下了。
cvs使用:
1、检出原代码:要想使用保存在cvs中的文件,必须检出,生命源码代在检出的文件中修改,
cvs checkout -d /mnt chop
2、将改动合并进原代码库:在修改编辑好了一个文件后,要合并需要两步,首先,更新cvs确保其他开发人员对你编辑的文件的修改已经反映到你的原代码上,使用cvs update命令,cvs检测到别人和你编辑了同一文件,他会检索出有关版本,进行合并,然后你就可以使用cvs commit命令提交你自己的tomic的源码修改了,此时,你修改的内容其他人可以看到了。注意,提交操作需要使用普通拥护,因此,最好不要用root用户来登陆
3、检查改动:要检查一个文件的修改历史,使用log命令cvs log yo.c
4\添加和删除文件:cvs维护了议和工作目录的历史,但是它不会自动假定一个被删除的文件代表该文件应该从原代码库中被删除,添加也一样,因此,你可以通过commit\add\remove命令组合来实现.
添加一个文件到原代码库:创建文件,用add加入,用commit命令提交到原代码库
cvs add yo.h
cvs commit -m "Add header file " yo.h
删除:
cvs rm main.c
cvs commit -m "remove main.c"
5\解决文件冲突
在cvs update命令执行后没有出现成功合并差异的M yo.c标志,而是C 冲突,U出现了新的文件,这样为了解决冲突,只好编辑冲突文件,解决冲突后再提交.
cvs命令:
admin:执行原代码库的多种管理功能
checkout:用来自原代码库的文件创建工作目录
diff:显示工作目录和原代码库之间的区别或者原代码库中不同版本的差别
export:创建原代码库的一个拷贝,但是不更新
history:创建原代码库中文件或者目录所执行的cvs命令历史信息
release:取消cvs checkout操作以及对工作目录所做的任何修改
status:显示原代码库中文件的当前状态
cvs选项:
-d cvsroot:指定原代码库的根目录
-e editor:使用editor编辑日志信息
-f:~/.cvsrc文件
CVS系统简介
CVS版本控制系统,作为一款GNU软件包,主要用于多人开发环境下的源码维护。其全名为"Concurrent Versions System",溯源码钢印意指并发、协作、一致等概念,实则适用于任何文档的开发与使用,不仅仅局限于程序设计。文件类型可涵盖文本与二进制。CVS通过Copy-Modify-Merge变化表支持文件的同时访问与修改,明确将源文件存储与用户工作空间分离,实现并行操作。 CVS采用客户端/服务器模式,允许多个用户同时访问,成为不同地点的人同时处理数据文件,特别是程序源代码时的首选系统。所有重要免费软件项目均利用CVS作为开发人员间的中心点,整合改进与更改。例如GNOME、KDE、THE GIMP与Wine等项目均采用CVS。 工作流程上,一台服务器上建立源代码库,管理员统一管理项目文件。用户下载项目文件至本地,任意修改后,使用CVS命令提交,由源代码库统一管理,实现如同一人修改文件的效果,避免冲突,跟踪文件变化。CVS为客户机/服务器存取模式,允许开发者通过任何互联网接入点获取最新代码。无限制的版本管理检出模式避免因排他检出引起的人工冲突。 CVS广泛应用于流行开放源码工程,如Mozilla、GIMP、XEmacs、KDE与GNOME等。它通过客户机/服务器存取方法,使开发者能连接至因特网上的CVS服务器获取文件。在团队中工作时,开发者能调整各自修改,集中式版本控制系统允许此操作。安全网络对所有开发者皆有益处,特别适用于软件开发团队。 在传统版本控制系统中,开发者检出文件修改后登记,检出文件的开发者拥有排他权。而CVS采用无限制检出模式,允许其他开发者同时检出并进行修改,且不会导致文件冲突。多个开发者对同一文件的修改会自动合并,避免覆盖问题。CVS提供了大量跨平台的附加工具,增强功能或简化使用。扩展资料
CVS是一个C/S系统,多个开发人员通过一个中心版本控制系统来记录文件版本,从而达到保证文件同步的目的。CVS版本控制系统是一种GNU软件包,主要用于在多人开发环境下的源码的维护。