首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > CVS SVN >

MyEclipse 中施用 TortoiseSVN

2012-08-24 
MyEclipse 中使用 TortoiseSVN一.?? svn 简介:????Svn(Subversion)是近年来崛起的版本管理工具,在当前的开

MyEclipse 中使用 TortoiseSVN

一.?? svn 简介:

????Svn(Subversion)是近年来崛起的版本管理工具,在当前的开源项目里(J2EE),几乎95%以上的项目都用到了 SVN。Subversion 项目的初衷是为了替换当年开源社区最为流行的版本控制软件 CVS,在 CVS的功能的基础上有很多的提升同时也能较好的解决 CVS 系统的一些不足。

?

??? TortoiseSVN是?Subversion?的?Windows?扩展。它使你避免接触?Subversion?枯燥而且不方便的?Command Line。它完全嵌入?Windows Explorer,使用时只需在正常的窗口里右键操作就可以了

Subversion为版本控制软件的服务器端。

TortoiseSVN为版本控制软件的客户端。

二。Subversion下载安装

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

下载地址:http://subversion.tigris.org我们使用版本Setup-Subversion-1.6.5.msi

安装界面

?????????

?

第一步:点击Setup-Subversion-1.6.5.msi

??????

MyEclipse 中施用 TortoiseSVN

?

?

第二步:

?????

MyEclipse 中施用 TortoiseSVN

?

?

第三步:安装到software目录下的svn目录下这两个目录都要提前建立

??????

MyEclipse 中施用 TortoiseSVN

?

?

第四步:

?

????????

MyEclipse 中施用 TortoiseSVN

?

?

?

第五步

?

?

?????????

MyEclipse 中施用 TortoiseSVN

?

第六步:安装完成

?

MyEclipse 中施用 TortoiseSVN

第七步:最终安装完成后,如何验证在我们的服务器上就成功安装了Subversion呢?Subversion在安装时,同JAVA的开发环境(JDK)的安装一样,同样会自动的把安装目

录下的bin目录设置到系统的系统变量中去。如果你是使用的绿色版,那么设置系统变量

这个步骤就得你自己手动的来设置了,如:

?

MyEclipse 中施用 TortoiseSVN

?

第八步:,如果我们在系统的命令行执行命令:

【svnserve –version】

如果能正常显示如下图所类示的信息,则表明我们的Subversion的安装是成功了的。

????

MyEclipse 中施用 TortoiseSVN

subversion 服务的启动(在xp 系统中)

?

1》 双击执行 Setup-Subversion-1.6.5.msi

详见:SVN安装界面文档

2》 subversion 安装成功后,在启动svn前需要先建立一个文档仓库

我们使用svn服务器端命令 svnadmin建立 如下:

svnadmin create F:\software\repository\svn\itcast

3》 建立好文档仓库后,我们进行subversion启动

第一种方式:命令行启动,我们使用服务器端命令 svnserve 如下:

svnserve -d -r F:\software\repository\svn\itcast

启动后我们如何知道svn启动成功呢? 我们查看端口使用情况:

netstat -an

我们看到3690端口服务,说明启动成功


第二种方式:安装svn后配置windows自动启动服务

?

sc create SVN-Service binpath= "D:\Subversion\svn\bin\svnserve.exe--service -r?J:\repository\svn" displayname= "SVN-Service" start= auto depend= Tcpip
? binpath 指定svnserve 的路径和命令
? start= auto 表示服务自动启动。注意:等于号的左边无空格,而右边必须有一个空格
? Displayname、start、depend
? 在此命令中-r(--root)项目版本仓库的根目录

启动服务

net start SVN-Service

?

查看服务是否添加成功,可以选择windows 控制面板--》》管理工具--》》服务 会发现列表中有SVN-service服务

?

MyEclipse 中施用 TortoiseSVN

?

?

删除服

sc delete SVN-Service

?

?

如果要重新安装SVN-Service请先删除这个服务

?

如下图。。

?

MyEclipse 中施用 TortoiseSVN

?

?

?

这样。。SVN-Service服务端就算是安装完成了?? ,,

你也可以自己设置为手动启动。。以免占开机时间。

SVN-Service服务端 是否是打开的,还可以通过查看本机的端口号3690是否开启来确认。每一项服务的开启都有会开启一个独有的端口号 如mysql 3306? tomat 8080 等等

可以用netstat -an 命令查看 如图

?

MyEclipse 中施用 TortoiseSVN



三。Tortoisesvn下载安装

http://tortoisesvn.net/downloads

360安装卫士软件宝库

我们安装版本TortoiseSVN-1.7.6.22632.msi

Tortoisesvn汉化

http://tortoisesvn.net/downloads(Language packs)

?

Tortoise SVN安装界面

?

第一步:点击TortoiseSVN-1.7.6.22632.msi

?

MyEclipse 中施用 TortoiseSVN

?

?

第二步:

?

MyEclipse 中施用 TortoiseSVN

?

第三步:

?

MyEclipse 中施用 TortoiseSVN

?

?

第四步:

?

MyEclipse 中施用 TortoiseSVN

第五步

MyEclipse 中施用 TortoiseSVN

第六步:安装完成

?

MyEclipse 中施用 TortoiseSVN

?

第七步:最终安装完成后,系统提示是否重启,点击yes(因为不重启可能会造成显示不正确)

第八步:我们如何判断客户端安装成功呢

在任一文件夹中点击鼠标右键,如果显示如下图所示,说明安装是成功了的

?

MyEclipse 中施用 TortoiseSVN

?

?

?

四。给myeclipse?9.0 安装svn插件

方法 一

?

1.打开MyEclipse 9.0,Help > Software Updates > Find and Install...

如果Help下没有:window--preferences--general-capabilities,右侧选中Classic Update,“apply”即可,现在help中就出现“Software Updates”了。

?

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

?

在弹出的菜单中选

Search for new features to install >next > New Local Site... >

到下载的SVN 插件解压出来的文件夹(subclipse-1.6.5) > 确定> Finish,

?

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

?

在弹出的菜单中,Select the features to install:

在刚加进去的路径/site-1.6.5 这一项前打钩,此时会报错,然后点开
Subclipse 前的加号,去掉Subclipse Integration for Mylyn
3.x(Optional)3.0.0 前的勾,错误消失> next > 选I accept the terms in
the license agreements > next > next > 选中所有的8项,然后Change
Location...,在弹出的菜单中选Add Location...,选择在第2步中建的文件夹的路
径(C:\Program Files\MyEclipse 6.5\eclipse\plug-in\site-1.6.5)>
Finish > 在弹出的菜单中选Install All > Yes ;

本图是我已经安装好后的 作为报错的提示

?

?

MyEclipse 中施用 TortoiseSVN

2、完成第3步后,MyEclipse 会重启,Window > Show View > other > 选择
打开SVN 目录下的SVN Repositories;

?

MyEclipse 中施用 TortoiseSVN

3、可以正常使用SVN 插件了。

?

?

MyEclipse 中施用 TortoiseSVN

?

MyEclipse 中施用 TortoiseSVN

?

方法二 这个方法比较通用。。也适合在eclipse中哟

?

1.把下载好的?? eclipse_svn_site-1.6.5.zip zip包解压到myeclipse6.5根目录下

MyEclipse 中施用 TortoiseSVN

2.在links 文件夹下新建一个名为eclipse_svn_site-1.6.5.link 的文件

MyEclipse 中施用 TortoiseSVN

3.在eclipse_svn_site-1.6.5.link 中添加path

path=D:/javasoft/MyEclipse6.5/eclipse/eclipse_svn_site-1.6.5
MyEclipse 中施用 TortoiseSVN

?

4.重启 eclipse? 或者myeclipse 如果出现首页? 就是打开eclipse 那个? 非常漂亮的主页

说明安装好了 或者看见这个

?

MyEclipse 中施用 TortoiseSVN

?

?

?

?

下图是一个svn的访问图?

MyEclipse 中施用 TortoiseSVN

svn 的策略

拷贝-修改-合并方案(svn,cvs采用)

拷贝 :如果一个新成员刚来到公司时,项目经理就会让他的部员第一次去checkout .

???? 这里的checkout 是接触项目的第一次对svn的操作。目的是从服务器中的svn仓库中下载到本次项目的源码,一般今后和同事们一起构建这个项目,为这个项目来添砖加瓦,其后会是一顿的 update

修改:这个可以这么理解,就是修改从svn仓库下载来的源码。不管是你自己以前写的还是别的同事的源码,都可以修改。

合并: 在两个人a,b先后 修改了 xxx.java 但是 b.先commit了。。 后来a在commit时, 发现版本过期。

这时。a不得不update 后在慢慢的合并 自己和b的代码。。然后才commit .要是b未调试好自己的代码。就commit 了 。这些a就蛋疼啦。。 还要解决b遗留下来的问题。 要知道这个合并不是好事呀

?

MyEclipse 中施用 TortoiseSVN

?

小例子。

??? 先来三个人物。。项目经理yoyo?? 职员lili?? 公司新人biabai

先来创建? svn仓库【repository】

?仓库在我本机上给建立啦。。本人也没能力去买一台深蓝Super cp 来当服务器ya,没法,我这破本是又当Server? 又当Client。嘿嘿开始啦。

在先前我们启动 SVN-Server时就指定了svn 仓库了。

?

MyEclipse 中施用 TortoiseSVN

?

这里J:\repository\svn? 就是我们的大仓库 ,这里指定的是多仓库.

之后我们在svn文件夹里新建一个如AO项目的文件夹ao

MyEclipse 中施用 TortoiseSVN

?

?

进入AO项目的文件夹。我们将把它作为一个小仓库

右键鼠标依次选择 TortoiseSVN ->Create repository here

?

MyEclipse 中施用 TortoiseSVN
之后。。选择 ok 就在服务器端上的J:\repository\svn大仓库下好了我们OA项目的代码仓库oa 小仓库

?

?

MyEclipse 中施用 TortoiseSVN

??

仓库目录说明

db目录:就是所有版本控制的数据存放文件。

hooks目录:放置hook脚本文件的目录。

locks目录:用来放置Subversion文件库锁定数据的目录,用来追踪存取文件库的客户端。

format文件是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号。

conf目录:是这个仓库的配置文件(仓库的用户访问帐号、权限等)。?

?

下一步。。

给我们的oa项目小仓库创建访问权限

? 是的,看了上面的说明后可知,在conf文件夹下 有仓库的配置文件

我们进入conf 如图:

?

?

MyEclipse 中施用 TortoiseSVN

看图的情况我们得先配置?svnserve.conf 文件。。

用一般的记事本打开。。我们稍稍的修改几下就差不多啦

第一步对svnserve.conf 文件作如下修改,找到以下四行: #anon-access = read #auth-access = write #password-db = passwd #authz-db = authz 将这四行前的“#”号去掉,并修改如下: anon-access = none 不允许匿名用户访问 auth-access = write 通过验证的用户可以读写 password-db = passwd 用户保存文件 authz-db = authz 权限管理文件

?

MyEclipse 中施用 TortoiseSVN

?

第二步对passwd中 添加一行 user1=user1passwd (前面是用户名,后面是密码) ltw = ltwpasswd

?

MyEclipse 中施用 TortoiseSVN

第三步对authz中 作如下操作

[groups] svngroup = ltw [itcast:/] @svngroup = rw 定义组svngroup下的所有用户拥有 读写权限 (注意:rw权限具有继承性,例如我们对于根目录设置了有读写权限 则对于根目录下的所有子目录同样具有读写权限) user1 = r 定义用户user1拥有读权限 * = 其他用户无任何权限

MyEclipse 中施用 TortoiseSVN

如果权限保护目录为中文,则必须将authz文件利用ultraedit工具转存为UTF-8 无BOM 格式 否则权限不生效

给仓库放东西

接下来 ,项目经理yoyo就会把项目的框架给搭建好。发布到 仓库上 ,然后让程序员们checkeout 来得到了

打开myeclipse 6.5 新建一个oa 项目如图

?

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

点击finish后我们算是模拟完成项目经理搭建项目的框架了 。

接下来 打开svn Repositories 视图 点击 下图红框中的按钮 进入 Add SVN Repository 窗口

输入你要上传的 仓库的Url ,由于是本机上的我就svn://localhost/oa 啦? 这里的oa 就是我这个项目对应的小仓库啦。 点击finish 后会出现如下图 左边 有一个黄色小桶 后边跟着svn://localhost/oa 的字样的

这表明。你连接成功了。

?

MyEclipse 中施用 TortoiseSVN


如下图。当我们准备第一次Checkout时。什么都没有。

?

MyEclipse 中施用 TortoiseSVN

?

MyEclipse 中施用 TortoiseSVN

如下图。让后yoyo就上传项目了。当然这是一个Share 的过程:

??? 在share 之前,你的项目的图片没有变化就是一个普通的web project 项目的图标

步骤一

MyEclipse 中施用 TortoiseSVN

步骤二

?

MyEclipse 中施用 TortoiseSVN

?

?

?

步骤三

?MyEclipse 中施用 TortoiseSVN

步骤四

?

MyEclipse 中施用 TortoiseSVN

?

?

点击finish 完成。。完成后,,yoyo的项目就变成带? *?? 的 web project 啦。 这个提示。。这个项目需要更新啦 。。那我们就第一次提交来更新它。

MyEclipse 中施用 TortoiseSVN

当我们Commit 后。又会变成带有?? 黄色小桶的web project 图标 这说明此项目是更新过的

提交时会需要密码输入。。你可以让它记在你的密码

如下一系列图。是提交过程: 1.

MyEclipse 中施用 TortoiseSVN

2.

?

MyEclipse 中施用 TortoiseSVN

?

3

?

MyEclipse 中施用 TortoiseSVN


4

看这里?? 项目图标右下角变成黄色小桶啦。

?

MyEclipse 中施用 TortoiseSVN

?

之后我们来开始? 协同 工作。。

yoyo? 新建一个MyJsp.jsp? ,在里面输入一个"svn test <br>"字样 保存后 Myjsp.jsp的图标右下角变成? 说明Myjsp.jsp 修改了,还没有没有提交 ,我们提交以下。

步骤如下:

?

1

?MyEclipse 中施用 TortoiseSVN

2

?

MyEclipse 中施用 TortoiseSVN

3

?

MyEclipse 中施用 TortoiseSVN

?

4? 到这里 。项目中文件的图标都在右下角都添加了一个黄色小桶。见到小桶让人舒服呀。。。这表示你的工作完成了。

?

MyEclipse 中施用 TortoiseSVN

?

同时 。。程序员lili? 要参加这个项目的开发中来。。lili 也得先checkout 从服务器端共享一份源码,来工作

这里我们就没有用myeclipse来演示 ,为了熟悉以下窗口下的工作方式。

lili在他的工作空间中 新建了一个lili的文件夹,以便来接受存放源码

步骤如下:

1

MyEclipse 中施用 TortoiseSVN

2? 进入lili 文件夹,在窗口内单击鼠标右键,出现如下图的菜单。然后checkout 吧

MyEclipse 中施用 TortoiseSVN

?3 ,? 输入项目经理yoyo给lili的 ao项目仓库地址? 如下图高亮处,

MyEclipse 中施用 TortoiseSVN

4点击ok 后就有一个绿园白钩的让人舒服的文件夹,没错 这个就是项目经理yoyo构建好的svnTest项目

?

MyEclipse 中施用 TortoiseSVN

5, 进入项目中发现和yoyo在myeclipse 中的文件是一样的。呵呵。。这就是svn 的高明之处啦。。

?

MyEclipse 中施用 TortoiseSVN

?6 在WebRoot 目录下 还找到了 yoyo 编辑过的Myjsp.jsp.

?

MyEclipse 中施用 TortoiseSVN

为了体现? 协同。。yoyo再次在MyJsp.jsp中添加了 yoyo add agian<br> 并且提交了

步骤如下:

1

MyEclipse 中施用 TortoiseSVN

2 提交: 把yoyo修改的Myjsp.jsp 提交到服务器上去,更新项目的版本?

?

MyEclipse 中施用 TortoiseSVN

3? lili 得知 yoyo 更新了Myjsp.jsp ,便更新了一下自己的项目。

?

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

?

4? lili 再次打开 yoyo修改过的MyJsp.jsp 后。 发现多了 yoyo add again<br>?? 如下图红框中的内容。。

??????? 这就对了。。。而且 版面跟新为4 了?

?

MyEclipse 中施用 TortoiseSVN

这时来了一位新员工。。baibai

? baibai也要加入这个项目来。。就在 项目经理个baibai添加了用户和密码。。如下图。。不明白请参考上面仓库设置权限的小节。

MyEclipse 中施用 TortoiseSVN

?

MyEclipse 中施用 TortoiseSVN

baibai 上班第一天也是 先在 SVN Repositories 视图中添加项目经理yoyo指定 svn 仓库

如下图

?

MyEclipse 中施用 TortoiseSVN

?

然后导入 要一起协同开发的项目

?1.File菜单-》Import

?

MyEclipse 中施用 TortoiseSVN

2 .svn ->Checkout Projects form SVN

MyEclipse 中施用 TortoiseSVN

?

3 选择连接

?

MyEclipse 中施用 TortoiseSVN

?4.选中项目? 点击finish

MyEclipse 中施用 TortoiseSVN

下图是还没有导入项目之前的样子

?

MyEclipse 中施用 TortoiseSVN

导入后的的 svnTest 项目

MyEclipse 中施用 TortoiseSVN

点开 项目的+ 号 后找到 myJsp.jsp 并进行修改 。添加 baibai add<br>? 后提交。。

?

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

?

MyEclipse 中施用 TortoiseSVN

MyEclipse 中施用 TortoiseSVN

得知被baibai,修改Myjsp.jsp 后的lili? 的更新一下 项目

?

MyEclipse 中施用 TortoiseSVN

?

MyEclipse 中施用 TortoiseSVN

下图为 lili update 后的 myjsp.jsp? 。。

MyEclipse 中施用 TortoiseSVN

?

就此?? 一次次的新建文件 。修改? ,提交。。更新?? 后。。。。。项目就完成了。。

当 发现 别人修改后的代码不对时还可以通过History 用旧版本的文件替换新的有bug的文件

热点排行