Eclipse 如何使用版本控制 (2/2)

原创 2003年09月02日 23:25:00

3. 使本地更改与 CVS 资源库同步
如果一个项目开发人员准备提交他/她的工作,那么首先要执行更新操作。这会针对引入的更改核对资源库,并将这些更改添加到该开发人员的本地工作台。这样确保了开发人员知道这些更改可能会影响他/她将要提交的工作的完整性。使用项目上下文菜单中的 Compare With... 选项将本地版本与资源库中存储的代码进行比较(请参阅图 5)。

图 5. 比较本地版本与资源库中的版本
本地版本

下一步是解决最后出现的任何冲突,并设法再次编译代码。如果一切正常,那么从项目上下文菜单使用 Team -> Commit... 选项执行提交操作,如图 6 所示。这会使所有更改都集成到资源库中。

图 6. 将更改提交到远程资源库
提交更改

4. 管理资源库
CVS 允许开发人员将更改隔离在开发的某些独立路径之内,这些路径称为分支。当一个开发人员更改某个分支上的文件时,这种更改不会出现在主干或其它分支上。那些分支被命名为子版本(subversion)代码分叉(code fork)。稍后,由合并操作将更改从一个分支迁移到另一个分支(或主干)。然后提交这些修订。这样就有效地将更改复制到了另一个分支上。使用项目上下文菜单的 Team -> Branch... 选项,Eclipse 使开发分支之间的迁移变得容易。

当然,当开发团队维护大型资源库时,有必要控制项目内的提交和合并操作。Eclipse/CVS 集成提供了一种特殊的视图:CVS Repository History(请参阅图 7)。它给出了关于团队成员在资源库中所执行更改的快速预览。

图 7. 在 CVS Resource History 窗口中查看带注释的修订历史记录
修订历史记录

Eclipse 平台提供了几个支持代码管理的实用程序。最有用的是补丁功能。它将出自两个来源(譬如本地工作台和资源库)的代码进行比较,然后创建一个包含代码差异的类似 UNIX 的补丁文件(请参阅图 8)。可以将该文件发送给开发人员以将源代码升级到最新版本。

图 8. 创建用于源代码分发的补丁
源代码分发

5. 断开项目与 CVS 的连接
当项目开发已经结束,并且团队希望冻结源代码时,可以从 HEAD 资源库删除该项目的最终版本。断开项目与 CVS 的连接将在该项目及其资源上禁用资源库操作,并删除与该项目相关联的 CVS 信息(这一操作是可选的)。

可以通过项目上下文菜单中的 Team -> Disconnect 选项执行断开连接操作。通过选择这个选项,会打开 Confirm Disconnect from CVS 对话框。在将该项目与资源库的连接断开之后,该团队必须确定如何处理 CVS 信息。第一个选项是“Delete the CVS meta information”;它将禁用 CVS 团队菜单操作并从文件系统中删除 CVS 文件夹及其内容。第二个选项是“Do not delete the CVS meta information”;它将禁用 CVS 团队菜单操作,但保留 CVS 元信息。

对第三方代码管理应用程序的支持
CVS 有几个重要的限制:它不能确定单个文件或整个文件集范围内同时进行的更改,它也不能检测文件之间的逻辑冲突。其冲突概念纯粹是文本意义上的,当对于同一基本文件的两个更改时间上非常非常接近,从而使合并命令受到干扰时,就会发生冲突。CVS 也不能提供任何类似于消息传递这样的交互式协作工具。幸运的是,CVS 并不是 Eclipse 平台所支持的唯一的源代码管理软件。开发人员可以通过插件扩展 Eclipse 平台的功能,而且目前(到 2003 年 3 月 4 日为止)已有 16 个可用于团队开发软件的插件。所有插件都是由 Eclipse 社区或商业软件供应商创建的。这些插件中的大多数添加了对第三方、商业源代码管理系统的支持。最有价值的插件是那些支持流行的企业代码管理系统(如 Merant PVCS 和 Rational ClearCase)的插件。例如,CVS-SSH2 插件允许通过 SSH2 会话访问 CVS,而 Microsoft Visual SourceSafe(VSS)团队提供程序插件添加了对 MS VSS 产品的支持(也可以在诸如 Linux 这样的非 Windows 平台上使用)。

但是,我本人所偏爱的插件是 Koi(请参阅参考资料以获取链接)。尽管它并非严格用于源代码控制,但这个创新的工具给协作开发注入了许多新的活力。其当前版本支持工作台到工作台的消息传递、共享标记、冲突更改通知、共享日历和事件通知。Koi 将 XML-RPC 用作其客户机-服务器体系结构中的通信模型。客户机是与“协作服务器”通信的单个 Eclipse 平台实例,而协作服务器也是一个 Eclipse 插件。Koi 使用以 JDBC 访问的关系数据库作为数据存储。可在参考资料中找到指向完整的、经过分类的 Eclipse 插件注册表的链接。

参考资料

关于作者
Pawel Leszek 是 Studio B 的一位作家,他是一位专长于 Linux/Win/Mac OS 系统体系结构和管理的独立软件顾问和作家。他具有许多操作系统、编程语言和网络协议方面的经验,尤其是 Lotus Domino 和 DB2 方面。Pawel 还在 LinuxWorld 上发表过一系列文章,他是 PC World 波兰版的 Linux 专栏作家。Pawel 和他的妻子以及可爱的小女儿住在华沙。欢迎提问并提出意见;您可以通过 pawel.leszek@ipgate.pl 与 Pawel 联系。

Eclipse 如何使用版本控制 (2/2)

3. 使本地更改与 CVS 资源库同步 如果一个项目开发人员准备提交他/她的工作,那么首先要执行更新操作。这会针对引入的更改核对资源库,并将这些更改添加到该开发人员的本地工作台。这样确保了开发人员知道...
  • Explorerwen
  • Explorerwen
  • 2004年09月16日 12:40
  • 1017

Eclipse 如何使用版本控制 (1/2)

本文概述了 Eclipse 平台如何支持软件项目中的源代码版本控制。首先,我们将简要讨论一下团队代码开发的思想,然后研究 Eclipse 如何使用 CVS 代码资源库。我们还将研究一些源代码管理软件工...
  • Explorerwen
  • Explorerwen
  • 2004年09月16日 12:39
  • 768

Eclipse 如何使用版本控制 (1/2)

Eclipse 如何使用源代码版本控制级别:中级Pawel Leszek(pawel.leszek@ipgate.pl)独立顾问2003 年 8 月本文概述了 Eclipse 平台如何支持软件项目中的...
  • doodoofish
  • doodoofish
  • 2003年09月02日 23:24
  • 3603

将eclipse与github相关联实现版本控制

最近刷题,想着把代码实时同步到github上。所以就上网查了一下如何实现eclipse与github的关联,这样我们每天写的程序就能push到github上,很是方便。 其实步骤很简单,现在的ecl...
  • liuchonge
  • liuchonge
  • 2017年02月27日 21:45
  • 584

svn版本控制在eclipse中用法详解

svn是当前一种注流的开源代码的版本控制系统。在一些大中型项目中,代码的版本控制是必不可少的。svn用于代码管理有以下几种作用: 1,可以多人同时进行编码,方便解决整合过程中的冲突。 2,可以追溯到之...
  • u014486880
  • u014486880
  • 2015年05月18日 14:50
  • 1363

Eclipse 如何使用版本控制

 CVS 是什么?CVS 诞生于 1986 年,当时作为一组 shell 脚本而出现,但它现在已经发展成了最流行的针对软件开发人员的源代码版本管理解决方案。CVS 是用于代码版本管理的开放源码的客户机...
  • night_cat
  • night_cat
  • 2007年08月19日 15:05
  • 800

Eclipse 如何使用版本控制

本文概述了 Eclipse 平台如何支持软件项目中的源代码版本控制。首先,我们将简要讨论一下团队代码开发的思想,然后研究 Eclipse 如何使用 CVS 代码资源库。我们还将研究一些源代码管理软件工...
  • steven2006
  • steven2006
  • 2007年07月20日 11:21
  • 538

版本控制git与eclipse的结合使用

Andye 停下休息的时候不要忘记别人还在奔跑! 博客园首页新随笔联系订阅随笔-151 文章-2 评论-223  Git/Github的使用以及与...
  • wanlichang200
  • wanlichang200
  • 2016年05月26日 08:52
  • 265

eclipse使用github实现版本控制,轻松解决代码管理问题

1.打开eclipse,查看自己eclipse的版本号然后打开install New Software… 在http://wiki.eclipse.org/EGit/FAQ#Where_can_I_...
  • u012661010
  • u012661010
  • 2017年06月21日 21:00
  • 218

eclipse报jvm terminated.exitcode=2异常解决办法

eclipse报jvm terminated.exitcode=2异常解决办法 转载自:http://www.educity.cn/wenda/467202.html 原理其实很简单,是由于我安转...
  • qiantujava
  • qiantujava
  • 2015年10月22日 09:26
  • 2462
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Eclipse 如何使用版本控制 (2/2)
举报原因:
原因补充:

(最多只允许输入30个字)