版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第12章 辅助工具与插件开发本章学习目标本章要达到的主要目标:了解版本控制基本概念;熟悉Eclipse SVN版本控制方法;了解Eclipse C/C+开发环境的搭建;了解Eclipse插件开发基础知识。团队和版本管理工具现在软件项目开发中,应用最广的团队协作和版本管理工具是CVS和SVN。CVS历史较长,应用更广一些,大量开源软件使用CVS共享源代码,与全球的贡献者一起协作开发。SVN则是近几年兴起的另外一套版本管理工具,功能和CVS类似,但有更多的新特征。Eclipse已经内建有CVS的支持,SVN则要通过安装新的插件来实现。CVS已经开始逐渐被SVN取代,新的软件项目已经纷纷开始采用SV
2、N。本章将学习SVN服务器的搭建,安装Eclipse的SVN客户端插件Subclipse,以及Subclipse的使用。版本控制的基本概念首先了解版本控制的概念,并认识现在流行的版本控制软件SVN。学习SVN的工作原理,其中重点是了解SVN如何进行版本控制,多人同时进行一个项目开发的时候,是如何利用SVN来进行协作的。什么叫版本控制系统?软件都是有版本编号的,软件开发过程中的版本控制不代表软件发行时的版本。软件开发过程中的版本控制就是记录源代码修改的过程,形成历史记录。开发者可以利用版本管理系统把源代码还原到任何一次历史记录。例如在开发过程中,不小心写了一个Bug,这个Bug在代码做了多次修改
3、后才发现,利用版本控制系统就可以查找出到底哪一次修改出现了这个Bug。什么是SVNSVN 的全称是Subversion。Subversion的系统内有一个主要命令是svn,所以SVN也成了Subversion的缩写。在 Subversion之前,CVS已经使用了很多年。尽管CVS的广泛应用,让其成为了一种事实上的标准,但是CVS还是存在着不少缺点。 Subversion的出现就是为了解决CVS的缺点。Subversion也是近几年才得以广泛应用,然后迅速普及。SVN的基本原理SVN的基本结构很简单,在SVN服务器端,建立有版本库(Repository),用户(程序员、参与开发者)利用SVN客户
4、端软件,通过网络连接SVN服务器,读取或者修改版本库中的文件;SVN服务器记录下这些文件的每一次修改。SVN的拷贝-修改-合并方案在没有使用版本控制工具之前,开发者使用共享文件夹的方式,在网络上和其他人一起共同编辑某个文档或程序代码。某些软件,例如Word,采用锁定的机制,避免共享者之间产生冲突。但是,如果有一方一直锁定着这个文件,那么另一方就无法修改编辑这个文件。SVN和CVS等等版本控制系统采取一种称为“拷贝-修改-合并”的方案,让写作者可以同时编辑修改同一份代码。搭建SVN服务器现在网络上很多开源软件社区都已经应用SVN取代CVS作为主要的版本控制系统了。像S、Google Code等等
5、都提供了SVN服务。前提是,必须在这些社区注册软件项目,然后才能使用它们提供的SVN服务。如果需要一个内部的SVN系统,那就要搭建SVN服务器。在Subversion的官方网站上提供了详细的文档,介绍了如何搭建一个SVN服务器。另外还有不少第三方的软件,可以帮助用户更快捷地搭建、管理SVN服务器。VisualSVN通过访问VisualSVN的官方网站可以获得VisualSVN Server。建立版本库VisualSVN实现了SVN的基本管理功能,这些功能都是最常用的。大多数用户并不会完全使用SVN的所有功能,最常用的管理任务就是建立版本资源库,管理用户,对版本资源库的文件夹进行管理。下面介绍如
6、何建立新的资源库。建立版本库建立用户SVN最重要的作用是解决多个用户间开发协同问题,一个SVN资源库必然是要容许多个用户访问的。当然,也不排除只有一个用户的情况,单用户的情况就是个人把SVN当作一个开发的历史记录,而不是协同工具。安装Subclipse在 Eclipse平台以及JDT的发行包里面,还没有直接包含SVN的支持。E内已经有很多第三方的SVN插件,Subclipse就是其中一个。Subclipse安装简单,功能也比较完善。Subclipse的官方网站是/。可以使用Eclipse的安装和更新功能进行安装。安装SubclipseEclipse中使用SVN安装了Subclipse后,就可以
7、在Eclipse中使用SVN了。下面将演示在Eclipse中使用SVN。在这个演示中将先学习如何使用Subclipse连接SVN服务器。然后把上一章建立的项目HelloPDE发布的到SVN上,然后模拟多人同时对同一段代码进行修改,学习如何使用Subclipse和SVN进行协同开发,并解决协同开发过程中的冲突。建立版本仓库的连接首先打开项目。使用SVN服务器的第一步是建立SVN版本仓库的连接。文件的同步标志如何才能知道哪些文件需要和服务器同步呢?在项目浏览视图或者包视图中,每个文件图标的右下角都有一个同步标志。发送修改到服务器在前面建立的了项目的SVN连接后,只是在服务器建立了项目的文件夹而已,
8、项目中所有文件都还没有发送到服务器。正如Synchronize视图中所示,所有文件都附带了新增的同步标志。这时候,按视图工具栏上的发送按钮。获取SVN服务上的新版本要检查SVN服务器上的文件有没有被修改,或者说是否有新的版本,在项目上点击鼠标右键,选择弹出菜单的Team-Synchronize with Repository。如果SVN服务器上没有更新,则会弹出没有更新的提示框。解决冲突一个团队中,多人同时开发一个项目或者一个源代码的时候,出现冲突是难免的。这种情况就是前面图5-2中第4步出现的冲突问题。SVN会发现冲突,Subclipse也提供了比较源代码的工具。如何解决冲突,由开发者作决定
9、。解决冲突从SVN服务器导入新的项目很多时候,软件项目并不是自己创建。可能是团队中其他人创建,也可能是网上的一个开源项目。只要这些项目共享到某个SVN服务器中,就可以把它们导入到Eclipse中,并建立成为一个新的项目。Eclipse 开发 C/C+ 程序C/C+ 开发环境搭建安装并测试 MinGW 环境使用 Eclipse 创建 C+ 程序C/C+ 开发环境搭建Eclipse C/C+ 程序开发Eclipse 默认安装没有对 C/C+ 开发支持需安装 CDT 和 C+ 编译器 C+ 开发环境Eclipse SDK CDT SDKMinGWC/C+ 开发环境搭建获取 CDTC/C+ 开发环境搭
10、建获取 MinGW下载地址/download下载文件MinGWStudioFullSetup-*.exe安装 MinGW直接安装至 C 盘 MinGWStudio 目录即可将 C:MinGWStudioMinGWbin 目录下的 mingw32-make.exe 文件重命名为 make.exeC/C+ 开发环境搭建设置如下环境变量PATHC:MinGWStudioMinGWbinLIBRARY_PATHC:MinGWStudioMinGWlibC_INCLUDE_PATHC:MinGWStudioMinGWincludeCPLUS_INCLUDE_PATHC:MinGWStudioMinGWi
11、ncludec+3.3.1;C:MinGWStudioMinGWincludec+3.3.1mingw32;C:MinGWStudioMinGWincludec+3.3.1backward;C:MinGWStudioMinGWinclude测试 MinGW使用文本编辑器写测试用的源程序 main.cpp 编译并运行该程序#include using namespace std;int main() cout 运行 运行方式 Eclipse 应用程序插件的 Hello World运行 Hello World 插件主菜单 样本菜单 样本操作这里也是样本操作常用插件扩展点透视图(perspectiv
12、es)扩展点视图(views)扩展点编辑器(editors)扩展点首选项(preference)扩展点帮助扩展点常用插件扩展点透视图(perspectives)扩展点在 MyPlugin2 项目中加入透视图扩展点常用插件扩展点透视图(perspectives)扩展点建立透视图类 SamplePerspective常用插件扩展点透视图(perspectives)扩展点运行插件窗口 打开透视图 其他选择 MyPlugin 透视图常用插件扩展点视图(views)扩展点在透视图中加入视图,修改 plugin.xml常用插件扩展点视图(views)扩展点创建视图类 View1常用插件扩展点视图(views)扩展点创建视图类 View2常用插件扩展点视图(views)扩展点将视图 1 和视图 2 加入透视图(修改透视图类)常用插件扩展点视图(views)扩展点运行插件常用插件扩展点在视图之间实现事件监听修改 View1.ja
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 健身租赁合同范例
- 天府新区信息职业学院《建筑设计原理(2)》2023-2024学年第一学期期末试卷
- 产品包装合同范例
- 外包司机协议合同范例
- 淘宝代拍合同范例
- 炸鸡店劳务合同范例
- 第五章 第4节 眼睛和眼镜 教学实录2023-2024学年人教版物理八年级上册
- 劳务合同范例工厂
- 法兰采购合同范例
- 财会从业资格考试模拟题+答案
- GB 19517-2004国家电气设备安全技术规范
- 【表格】面试评分等级标准表
- 山西省太原市市药品零售药店企业药房名单目录
- 全面设备保养TPM培训教材课件
- 垃圾焚烧发电厂项目给排水安装工程专项方案
- DB64-T 1147-2022 宁夏工业单位产品能源消耗限额
- 授课比赛评分表
- XXXX供电项目可行性研究报告
- 抗菌药物供应目录备案表
- TSG G0002-2010 锅炉节能技术监督管理规程
- cass实体名称,图层,实体代码对照表
评论
0/150
提交评论