【vc++精品源码栏目提醒】:网学会员鉴于大家对vc++精品源码十分关注,论文会员在此为大家搜集整理了“cvs使用手册 - 教育”一文,供大家参考学习
1.CVS 简介: CVS 是一个客户机/服务器系统,是一个常用的代码版本控制软件,类似于 microsoftVisual SourceSafe(Microsoft Visual SourceSafe 是美国微软公司出品的版本控制系统,简称 ,VSS) 可以让开发人员将他们的项目存储在称为资源库的中央位置。
使用 cvs 客户机工具,开发人员可以对资源库的内容进行更改。
CVS 资源库会依次记录对每个文件所做的每个更改,并创建一个完整的项目开发进展历史。
开发人员可以请求特定源文件的旧版本、查看更改日志,并根据需要执行其它一些有用的任务(例如,修改软件时可能会不知不觉混进一些bug,而且可能过了很久你才会察觉到它们的存在。
有了 CVS,你可以很容易地恢复旧版本,并从中看出到底是哪个修改导致了这个 bug) 。
CVS 的基本工作思路是这样的: 在一台服务器上建立一个仓库,仓库里可以存放许多不同项目的源程序。
由仓库管理员统一管理这些源程序.这样,就好象只有一个人在修改文件一样.避免了冲突.每个用户在使用仓库之前,首先要把仓库里的项目文件下载到本地。
用户做的任何修改首先都是在本地进行,然后用 cvs 命令进行提交,由 cvs 仓库管理员统一修改.这样就可以做到跟踪文件变化,冲突控制等等. 开 块 模 中 发 取 中 的 仓库 者 代 获 从 码 理 S 管 V cvs仓 库 仓 要 到C 库 将 入 导 项目管理员 程序开发者Repository: 中文名称:仓库。
它是 CVS服务器(可能在远程,也可能在本地)的根目录,我们所有的工作都保存在这个仓库中,包括源代码和这些代码的全部历史。
你可以把Repository想像成一个仓库,仓库中有许多“木桶”,每个“木桶”就是我们的一个让CVS管理起来的工程。
对于CVS来说,这些“木桶”之间是没有什么关联的,删除一个“木桶”不会影响别的“木桶”。
我们所想像的木桶,在CVS术语中,又叫模块(Module)。
Module:中文名称:模块。
就是上面我们所想像的仓库中的“木桶”,里面放的是一个项目的所有文件(包括源代码,文档文件,资源文件等等)。
在物理上,Module是CVS服务器根目录下的第一级子目录。
Import:中文名称:导入。
我们本地有一个软件项目,里面有许多各种类型的文件,都需要用CVS进行版本管理,那么第一步就是把这个软件项目的整个目录结构都Import到CVS的仓库中去。
经过这种导入,CVS将为你的项目创建一个新的“木桶”----Module,即模块。
Checkout:中文名称:导出。
指将仓库中的一个“木桶”Module 模块中的东西导出到本地的工作目录下,然后我们可以在WinCvs的管理下,进行工作,修改其中的内容。
Commit:中文名称:提交修改。
我们在本地的工作目录下,对工程中的文件进行修改,这些修改,需要提交给CVS的仓库,这个过程,就叫Commit。
你可以Commit一个文件,也可以Commit整个目录。
Update:中文名称:同步。
它与Commit相对应,是从仓库中的“木桶”(模块)中下载你同事修改过的文件(别忘记你的项目有许多人共同参与),如果这个文件在你本地也有,就会更新本地的拷贝,如果你本地没有,就会把新文件下载到你的本地。
Revision:中文名称:文件版本。
这是CVS中一个需要特别注意的概念,它指的是单个文件的版本,而不是整个项目的版本。
基本上,单个文件每次的修改,经过Commit之后,它的Revision都要改变一次,比如从1.1到1.2到1.3等等。
特别要注意,单个文件的版本Revision与整个工程产品的版本(Version或者Release)可以没有任何关系。
例如,整个产品现在发行1.0版本Version 1.0了,但是产品的源代码文件中,有的文件版本Revision可能是1.9 有的是2.1,等等。
这很容易理解,因为为了发行产品V1.0,我们需要对源代码进行多次修改编译。
Release:中文名称:发行版本。
整个产品的版本,例如VC5.0 VC6.0等。
Tag:中文名称:标签。
在一个开发的特定期,对一个文件或者多个文件给的符号名,一般是有意义的字符串,如“stable”“release_1_0”等。
比如,我们对某个文件的1.5版