eclipse下SVN subclipse插件(图解)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
eclipse下SVN subclipse插件
本文目的
让未使用过版本控制器软件或者未使用过subversion软件的人员尽快上手。
subversion的使用技巧很多,这里只总结了最小使用集,即主要的基本功能,
能够用来应付日常工作。
因此不涉及subversion服务器端的搭建和配置。
为什么要使用版本控制
当多人共同开发同一个软件时,会涉及源代码的共享以及带来的相关问题,比如追究某个代码是由谁在什么时间修改的。
下面列出版本控制带来的好处:
∙为团队提供了所有项目文档的回退按钮,个人IDE工具只能提供某个文件的回退按钮,而不能做到,比如回退到2008年6月12日下午3点10分
时的所有项目文件;
∙支持多个开发人员在可控的方式下为相同的代码工作;
∙版本控制系统保存了文档在过去的各个改动,便于查找是谁,在何时,因为什么修改了文档;
∙支持在文档的主线上同时有多个版本(版本的分支和合并是版本控制的主要手段,一些开发团队仅仅是简单的共享代码主干);
∙支持查询在某个时点上项目各个文档的状态,可用于研究生产效率等(比如,统计项目哪个时期代码提交最活跃,以及每个人的代码提交频次等等),也可用于对以前的软件发行版的再发行(比如,以前构建的2.0版本的
安装包丢失了,那么可以通过版本控制器记录的历史重新回溯到那个版本,然后重新构建出安装包)。
为什么使用subversion
首先,考虑的是使用免费开源和轻量级的版本控制器。
第二,要求使用比较广泛,可选的有cvs和svn。
这里选择svn,主要考虑是比较好集成apache使用,提交代码支持原子级操作(即,比如提交3个文件,如果因为网络或者其他原因,上传2个文件后中断,
svn能做到服务器端回滚到提交前的状态,而cvs做不到这点,需要手工检查和恢复)。
subversion的程序构成
subversion程序,和mysql很类似,是c/s结构的,有客户端和服务器端。服务器端和客户端都是通过命令行方式启动和执行的。本文只会使用到客户端的命令。
第三方提供了各种图形界面的客户端工具,比如eclipse插件subclipse,windows图形界面工具tortoiseSVN。这些后面会提到它们的基本使用。
subversion资源
∙subversion官方网站:/
∙subclipse官方网站:/
∙tortoiseSVN官方网站:/
∙使用subversion进行版本控制中文版在线版本:
/svnbook/
安装subversion
有关subversion和subclise的安装暂略,因为目前提供的虚拟机开发环境已经安装和配置。
tortoiseSVN,可到官方网站上下载最新版本的windows安装包,默认安装,不需要做其他设置,安装后需要重启计算机。能在资源管理器中鼠标右键菜单看到如下图所示条目,就说明安装成功。
使用subversion
日常工作中使用subversion仅仅是几个命令或者操作,并不复杂。但是它内部的一些机制需要逐渐去理解。
检出代码
在刚开始进入一个开发队伍的时候,已经有版本控制和软件项目,使用的第一个命令往往是检出(checkout)代码。或者当使用和研究开源软件的时候,也是第一个要用到这个命令。这个命令的作用是把项目的源代码下载到用户本地,并且带有版本控制信息。
比如,执行以下命令获取一个项目的源代码:
这个命令将在本地当前目录建vfs.demo目录并将该服务器目录下的所有文件下载到本地,并且,会生成隐藏文件.SVN目录,用于记录版本控制信息。
tortoiseSVN有图形界面的检出操作,但是命令行方便快捷,建议使用命令行。
如果使用eclipse并安装了subclipse插件,可以通过插件导入项目。
然后,
选择或者新建资源库位置,
选择资源库中的项目目录。
然后,就可以完成(finish)了。
初始导入
何时使用初始导入,比如,对于java开发人员来说,在eclipse中编写了一个项目,并决定把项目共享到版本控制器上,这时就需要初始导入操作了。
以下以subclipse为例说明初始导入的步骤。第一步,选择share project,共享你的项目:
选择通过svn共享项目:
填写svn提交的url:
这个url,需要subversion的管理员告知你,还有用户名和密码。如果想练习一下,google提供了免费的svn,你可以通过:申请项目,这样就会有类似我上面的url和权限。
然后可以直接点击finish,完成初始提交。选择next,可以做定制模块名和初始提交的信息,一般不需要。
如果你的svn服务器使用了https协议,需要接受一个数字证书,一般选择永久接受。
之后,会要求输入用户名和密码。建议勾选保存密码,否则会很麻烦。
这样,再看项目,会发现条目上多了问号,这时需要选择哪些目录和文件需要提交,哪些需要忽略,比如生成的class文件等。
选择需要忽略的文件或者目录,这时需要切换到导航视图下才能看到所有文件和目录:
从导航视图看到的情况:
选中需要忽略的目录和文件,操作svn:
然后提交整个项目即可。有关提交的操作见下文。
更新项目
项目在提交前,应该先做更新项目操作。比如有一个文件a.txt,已经提交到svn 中,这样,可能有其他用户提交了新的改动到a.txt,你现在又修改了a.txt,准备提交你的改动。先操作更新a.txt,这样如果该文件在svn服务器已经改动,会将改动加入到当前本地的a.txt中。
在subclipse中的操作: