一、CVS介绍

并发版本系统(Concurrent Versions System——CVS)是一个常用 的代码版本控制系统。

使用CVS可以对代码进行集中管理,记录代码所有的更改历史,提供 协作开发的功能并支持多人同时修改代码文件。

利用版本控制软件的好处(记忆)

  • 随时将程序恢复到以前某一时间点。
  • 实现程序的互斥性修改。能够实现某一程序在同一时间只能由一个开发人员修改。
  • 对程序修改进行有效的管理。可以将用户分为管理员和程序员两种角色,只有管 理员可以将程序冻结(Freeze)和解冻(Unfreeze),被冻结的程序是不允许 修改的。
  • 将开发环境与测试环境、运行环境进行有效的隔离。
  • 评估软件开发人员编写的程序质量,控制软件开发的进度。
  • 管理文档。使用者可以在版本控制中建立专门的文件夹,用于存放软件开发过程 中生成的各种文档。

二、常用版本控制软件

有哪些常用的版本控制软件(重点、记忆)

  • Rational ClearCase(两控两管): ClearCase涵盖的范围包括版本控制、建立管理、工作空间管理和过程 控制;ClearCase支持现有的绝大多数操作系统。ClearCase安装、配置、使 用相对较复杂,需要进行团队培训。
  • Visual SourceSafe(VSS):是一种很好的入门级的配置管理工具。易 学易用,采用标准的Windows操作界面。VSS提供共享、分支和合并功能,支持团队开发。 VSS只能在 Windows平台上运行,不能运行在其他操作系统上。VSS安全性不高。VSS的用户可以在文件夹上设置不可读、可读、可读 /写、可完全控制四级权限。VSS不收费,对用户的数目没有限制。
  • CVS:是开放源代码软件世界的一个伟大杰作,简单易用、功能强大、 跨平台、支持并发版本控制,而且免费;其最大的遗憾就是缺少相应的技术支持,许多问题的解决需要使用者 寻找资料,甚至是读源代码。

三、CVS的安装与配置

CVS Control Panel 的设置(重点、记忆)

  • 1)About页面提供了CVS产品的版本、来源以及服务状态等信息。
  • 2)CVS资源库的设置。我们通过IDE对代码进行编辑,最终都要提交 到这个文件夹中。
  • 3)Control Panel中的其余页。对于一般开发,使用默认设置即可。

CVS访问权限的设置(了解)

1、管理员账户:一般来说,给机器安装CVS的Windows系统管理员,也拥有CVS管理 员的权限。【更改和删除】

2、一般用户账户:一般用户账户不应该拥有管理员账户那么多的权限。

将软件载入CVS资源库(了解)

1)打开Eclipse的CVS Perspective, 创建一个新的CVS资源库连接。 鼠标右击CVS Perspective视图区域, 弹出快捷菜单,在New子菜单中选择 Repository Location…选项,在弹出 的窗口中进行相关设置。

2)回到Java视图,将项目载入CVS库中。 鼠标右击项目,在弹出的菜单中选择Team → Share Project。 在弹出的对话框中,可以进行一些信息的选择,包括CVS连接、提交时 的说明文字等。

提出(Check Out)

  • 首先,我们要从CVS资源库中复制一个软件镜像到本机的workspace 中,在复制过来的这一时刻,代码和CVS上的代码是一致的。
  • 然后,可以在这份代码的基础上进行修改,CVS能分辨出两者之间的 区别,当提交代码时,需要进行一些融合的工作。这项操作称为 Check Out。

代码同步(Synchronize): 如果想要将本地代码与资源库代码保持一致,就需要选择 Team → Synchronize with Repository。

1)更新本地文件(Update) 对于Incoming的文件,CVS资源库上的文件完全包含了本地文件的代 码,并拥有新的代码。用鼠标右键单击该文件,选择Update,这样就 将本地文件更新成与CVS一致的状态了

2)提交本地文件(Commit) 对于Outgoing的文件,本地文件包含了CVS上该文件的所有代码,并 且有新的代码添加,选择Commit命令,这样CVS上的文件就更新成本 地最新提交的版本了。

3)避免冲突(Mark as Merged) 如果存在冲突的文件,系统会对其进行更高安全性能的保护。 需要开发人员确认冲突已经排除之后,用鼠标右键单击该文件,选择 Mark as Merged命令,该命令标明文件已经过开发人员的验证,冲突 已经被避免。之后才可用Commit 命令进行提交

软件开发工具(第12章: CVS的安装及使用)的更多相关文章

  1. PSP个人软件开发工具需求分析文档

    第一部分:前景与范围 1.业务需求 1.1 背景 在目前的软件项目开发过程中,进度计划总是非常不准确,经常出现延期,而且大多数都无法给出一个相对比较准确的延迟时间.即使使用用例包.用例的方式组织需求, ...

  2. PSP个人软件开发工具

    (您的阅读是我的荣幸,如有不满之处请留言指正!) 尚未完善.....工作中 为开发人员提供一个PSP工具,简化时间记录工作:同时提供数据使用的工具,帮助开发人提高估算能力.   PSP个人软件开发工具 ...

  3. 你不得不用的MAC软件开发工具软件,个个万里挑一

    作为软件行业,尤其是程序员,Mac上都不得不安装一些必备的MAC软件开发工具软件,下面给大家分享一些必装的MAC软件开发工具软件,以备日后之需,有备无患. 其中,包含各种语言的主流 IDE.开发辅助. ...

  4. ThoughtWorks、Teambition、Trello、Slack、DevCloud 主流敏捷软件开发工具平台比较

    在大公司做了6年程序员,2年项目经理的小王,正在创业公司迎来他焦虑的而立之年. 但是对于3个月前加入创业公司的决定,他现在有些烦躁和怀疑人生.在他过往的经验看来,公司新接的小项目,在过去的大公司里1个 ...

  5. 全新的跨平台app软件开发工具——Lae软件开发平台

    Lae是一款运行于windows的界面开发工具,具有所见即所得.开发跨平台.UI布局自由.机制简单.维护容易等诸多优点,可以开发同时运行在windows.Linux.MacOX.iOS.Android ...

  6. 【转】软件开发工具介绍之 6.Web开发工具

    [本文转自http://www.cnblogs.com/dusonchen/archive/2011/02/09/1739087.html ] 1.EditPlus 无论是编写xhtml页面,还是cs ...

  7. 软件开发工具——Make

    掌握Makefile的使用方法和工作流程: 掌握make工具变量的相关知识,包括其引用.定义及分类等: 掌握Makefile常见的函数含义: 掌握Makefile与shell命令行的通信方法: 掌握M ...

  8. iOS平台软件开发工具(一)-新建的工程使用CocoaPods工具集成第三方框架

    CocoaPods是一款集合了上千个第三方开源库的开发工具,能够大幅度的提升团队项目的开发效率,降低时间成本. 那么就看一下CocoaPods这个工具在项目中的使用体现吧. 我们马上用ASIHTTPR ...

  9. 软件-开发工具:Gradle

    ylbtech-软件-开发工具:Gradle Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具.它使用一种基于Groovy的特定领域语言(DSL)来声明 ...

随机推荐

  1. Nginx使用GeoIP模块来限制地区访问

    举例比如限制泰国地区的IP访问: 前提条件,安装了http geoip 或stream geoip模块的Nginx Plus或者开源nginx Maxmind的GeoLite Legacy数据库 1. ...

  2. Vue中如何使用less

    最近发现好多小伙伴在面试的过程中会问到vue如何使用less和scss,所以我绝对更新.复习一下less:废话不多说直接进主题: 依赖下载 1.首先使用npm下载依赖: npm install --s ...

  3. MapReduce案例运行及分词

    首先查询进程,发现hadoop并没有启动 如何配置hadoop,参考我的另外一篇博文<Hadoop环境准备> 接下来,启动hadoop start-all.sh 或者 start-dfs. ...

  4. 056 模块7-os库的基本使用

    目录 一.os库基本介绍 二.os库之路径操作 2.1 路径操作 三.os库之进程管理 3.1 进程管理 四.os库之环境参数 4.1 环境参数 一.os库基本介绍 os库提供通用的.基本的操作系统交 ...

  5. 行数据库VS列数据库

    一.介绍 目前大数据存储有两种方案可供选择:行存储和列存储.业界对两种存储方案有很多争持,集中焦点是:谁能够更有效地处理海量数据,且兼顾安全.可靠.完整性.从目前发展情况看,关系数据库已经不适应这种巨 ...

  6. apk签名发布及其原理

    如果我们在ADT中开发完了一个android项目,如何将它打包呢?方法如下: 1.unsigned APP(无签名的APP) 最懒惰的方法,可以直接在项目的bin目录下直接将apk拷贝出来,就ok了. ...

  7. 剖析nsq消息队列(二) 去中心化代码源码解析

    在上一篇帖子剖析nsq消息队列(一) 简介及去中心化实现原理中,我介绍了nsq的两种使用方式,一种是直接连接,还有一种是通过nslookup来实现去中心化的方式使用,并大概说了一下实现原理,没有什么难 ...

  8. 降低 80% 的读写响应延迟!我们测评了 etcd 3.4 新特性(内含读写发展史)

    作者 | 陈洁(墨封)  阿里云开发工程师 导读:etcd 作为 K8s 集群中的存储组件,读写性能方面会受到很多压力,而 etcd 3.4 中的新特性将有效缓解压力,本文将从 etcd 数据读写机制 ...

  9. 实现非管理型UPS在linux主机上的停电自动关机

    买了个山特的SANTAK TG-BOX 850 UPS,自带USB通讯线缆.本以为官方软件提供Linux下的CLI命令以监控UPS状态. 官网提供的下载链接巨慢无比不说,CLI下只提供了安装脚本,没有 ...

  10. 23 (OC)* 推送、APNS

    1:APNS的推送机制 2:APNS推送通知的详细工作流程 3:准备工作 4:TCP长连接 5:消息格式 6:卸载后接受不到消息 1.APNS的推送机制 首先我们看一下苹果官方给出的对ios推送机制的 ...