`

CVS在项目中能为我们干什么?

阅读更多

    CVS是并发版本系统(Concurrent Versions System)的意思,主流的开 放源码网络透明的版本控制系统。

    CVS对于从个人开发者到大型,分布团队都是有用的:

    它的客户机/服务器存取方法使得开发者可以从任何因特网的接入点存取最新的代码。

    它的无限制的版本管理检出(check out:注1)的模式避免了通常的因为排它 检出模式而引起的人工冲突。

    它的客户端工具可以在绝大多数的平台上使用。

  CVS被应用于流行的开放源码工程中,象Mozilla,GIMP,XEmacs,KDE,和GNOME等。

    那么它到底怎么样?

  你可能会说,它非常棒,但是对于"我"来说它能做什么?首先,基本的:

    一个版本控制系统保持了对一系列文件所作改变的历史记录。

    对于一个开发者来说,那就意味着在你对一个程序所进行开发的整个期间,能够跟踪对其所作的所有改动的痕迹。对你来说,有没有出现过由于在命令行上 按错键而导致一天的工作都白费的情况呢?版本控制系统给了你一个安全的网络。

  版本控制系统对任何人都有用,真的。(毕竟,谁不愿意使用一个安全的 网络呢?)但是它们经常被软件开发团队使用。在团队中工作的开发者需要能够调整他们的各自的修改;一个集 中式版本控制系统允许那样做。

    代码集中的配置

  个人开发者希望一个版本控制系统的安全网络能够运行在他们的本地的 一台机器上。然而,开发团队需要一个集中的服务器,所有的成员可以将服务器作为仓库来访问他们的代码。在 一个办公室中,没有问题 -- 只是将仓库连到本地网络上的一台服务器上就行了。对于开放源码项目...噢, 还是没有问题,这要感谢因特网。CVS内建了客户机/服务器存取方法,所以任何一个可以连到因特网上的开发 者都可以存取在一台CVS服务器上的文件。

    调整代码

  在传统的版本控制系统中,一个开发者检出一个文件,修改它,然后将其登记回去。检出文件的开发者拥有对这个文件修改的排它权。没有其它的开发者可以检出这个文件 -- 并且只 有检出那个文件的开发者可以登记(check in:注2)所做的修改。(当然对于管理员有很多方法可以超越这个限制。)

  想一下排它的检出可能会如何工作:Bob的兄弟检出foo.java以便加入注释,写好代码后他什么也没做。然后他去吃午饭了。Bob吃完午饭后,发现他的老板所指给他的一个bug在 foo.java里。他试图检出 foo.java... 但是版本控制系统不允许他这样做,因为他的兄弟已经把它检出了。Bob不 得不等着他的兄弟吃完午饭回来(在这个"好"日子用了两个小时),他才可以修正bug。

  在一个大型的开放源码工程中,因为开发者可能在任意的时区工作得很 晚,给予一个开发者阻止任意地方的其它开发者继续处理任意文件的能力很明显示无法运转。他们最终将因为不能够在他们想要的时候开展项目而感到厌烦。

  CVS通过它的无限制的检出模式解决了这个问题。检出一个文件并不给定 开发者对那个文件的排它权。其它的开发者也可以对其检出,进行他们自已的修改,并且将其登记回去。

  "等一下!"你可能会说。"但是后面的登记不是会覆盖前面的吗?"回答 是不会。详细地回答就是当多个开发者对同一个文件作了修改CVS会检测,并且自动合并那些改变。

  哇噢。自动的?不用担心 -- CVS 会很小心,并且将会自动合并那些只 要不是对代码的同一行所作的改动。如果CVS不能安全的处理这些改动,开发者将不得不手工合并它们。

    从此去往何处?

  到现在为止,你已经毫不犹豫地着迷于CVS 的潜力,并且急不可待地想 开始。第一步就是去得到适合你的平台的CVS软件。安装CVS通常就是将其从你下载的压缩包中解开这么一件 事。配置CVS 可能要小心一些,它非常依赖于你使用的平台和你的CVS代码仓库的存放地。

 

分享到:
评论

相关推荐

    myeclipse用cvs上导入项目

    在使用MyEclipse通过CVS导入项目的过程中,可能会遇到一些常见的错误: - **连接失败**:检查网络连接是否正常,以及提供的服务器IP地址和端口号是否正确。 - **认证失败**:确认提供的用户名和密码是否正确,或者...

    CVS项目版本控制工具

    在使用CVS时,开发人员通常会使用命令行工具来执行各种操作,例如`cvs checkout`用于获取项目副本,`cvs add`用于添加新文件到版本控制,`cvs remove`用于移除文件等。此外,还有一些图形化的CVS客户端,如Rational ...

    CVS服务器 项目开发管理

    2. **仓库配置**: 在CVS服务器上创建仓库(Repository)是必要的,它是所有项目代码的集中存储地。仓库可以是单一的目录结构,也可以是多个独立的子目录,每个子目录代表一个项目。 3. **用户管理与权限控制**: CVS...

    CVS建立项目

    CVS(Concurrent Versions System)是一种版本控制系统,主要用于管理软件项目的源代码版本控制,支持多人协同开发,使得团队成员能够在同一项目中进行协作,并且能够追踪每一个版本的变化历史。 #### 建立CVS项目...

    Eclipse中导入CVS中的项目

    其中,CVS(Concurrent Versions System)作为最早的集中式版本控制系统之一,虽然现在已被更现代的系统如Git所取代,但在一些遗留项目或特定环境中,CVS仍然被广泛使用。当使用Eclipse这一流行的集成开发环境(IDE...

    在MyEclipse中使用CVS

    接下来,我们需要将项目与CVS关联。在MyEclipse中,右键点击想要版本控制的项目,选择“Team” -> “Share Project”。在弹出的对话框中,选择CVS作为共享的版本控制系统,然后按照提示完成项目的CVS绑定。 一旦...

    CVS安装工具-TortoiseCVS

    尽管Git等现代版本控制系统已经非常流行,但TortoiseCVS因其对CVS的完善支持,仍在一些项目中被广泛使用,尤其是在那些已经习惯了CVS工作流的团队中。然而,对于新项目或希望利用更先进特性的开发者,转向Git和如...

    myeclipse中操作基本cvs项目

    在介绍如何在MyEclipse中操作CVS项目之前,我们首先需要了解CVS(Concurrent Versions System)的基本概念。CVS是一种源代码版本控制系统,主要用于管理软件开发过程中的版本控制和变更跟踪。通过CVS,开发团队可以...

    cvs server安装与Eclipse简单使用

    本文将详细介绍如何在本地安装CVS Server,并在Eclipse中配置和使用CVS进行项目管理。 首先,让我们了解CVS Server的安装步骤: 1. **下载与准备**:你需要从官方或者可信的源获取CVS Server的安装包。确保下载的...

    CVS教学电子书如何安装CVS,CVS使用

    7. **查看历史**:`cvs log`命令可以帮助你查看文件或整个项目的变更历史,以便了解过去发生了什么。 **学习资源**: 提供的《CVS教学.pdf》电子书应该是详尽的教程,它会覆盖以上所有内容,以及更高级的使用技巧,...

    将cvs转换为svn库的工具cvs2svn

    【标题】:“将cvs转换为svn库的工具cvs2svn” 【描述】:“将cvs库转换为svn库需要用到的工具cvs2svn” 本文将深入探讨CVS(Concurrent Versions System)到SVN(Subversion)的转换过程,重点介绍用于此目的的...

    linux安装cvs操作手册

    ### Linux安装CVS操作手册知识点解析 #### 一、CVS简介与背景 - **CVS**(Concurrent Versions System...- CVS作为一款经典的版本控制系统,在许多场景下仍然发挥着重要作用,尤其是在需要维护大量历史版本的项目中。

    CVS客户端工具TortoiseCVS

    TortoiseCVS是一个专为Windows用户设计的CVS(Concurrent Versions System)版本控制系统客户端工具。CVS是一种开源的、分布式版本控制系统,用于管理软件项目的源代码,使得多人协作开发成为可能。TortoiseCVS则将...

    cvs最简单的使用方法

    这将在当前目录下创建一个名为`my_project_checkout`的目录,包含从CVS仓库检出的最新项目文件。 ### 更新和同步 要获取仓库中的最新更改,使用`cvs update`命令: ```bash cd my_project_checkout cvs update ``...

    CVS cvs-1.11.23

    CVS(Concurrent Versions System),中文常称为并发版本系统,是最早流行的一种开源版本控制系统,它的出现为软件开发团队提供了协同工作、代码管理和历史追踪的能力。本文将深入探讨CVS 1.11.23这一特定版本的特性...

    Eclipse中CVS使用

    CVS最初在UNIX/Linux环境中发展,如今已经成为许多Open Source项目首选的版本管理系统。它采用客户端/服务器架构,代码和文档的各个版本都存储在服务器上,开发者在本地工作并定期将更改提交至服务器,同时可以通过...

    VS2008 CVS插件

    总之,"iglooinstall"插件为VS2008用户提供了无缝集成CVS的可能,让开发者在熟悉的环境中进行版本控制,促进了高效和协调的软件开发。通过深入学习和使用这个插件,你可以在VS2008中充分发挥CVS的优势,提升项目开发...

    cvs 版本控制 cvs 版本控制

    cvs 版本控制 软件项目管理 cvs 版本控制 软件项目管理

    TortoiseCVS_CVS客户端工具

    TortoiseCVS是CVS(Concurrent Versions System)的一个图形用户界面(GUI)工具,它为开发者提供了一种直观且易于使用的界面来管理版本控制。CVS是一个开源的版本控制系统,广泛应用于软件开发中,用于跟踪代码更改...

    CVS配置与使用

    在"Repositories"选项卡下,添加项目存储位置,这将定义CVS仓库的路径,使得项目代码可以存储和检索。 **Eclipse配置** 在Eclipse集成开发环境中配置CVS,可以方便地进行版本控制操作。首先,选择一个项目,右键...

Global site tag (gtag.js) - Google Analytics