最课程阶段大做业之01:使用SVN实现版本控制

       版本控制在友军那里都是放在整个培训的最后阶段才开始讲的,但咱们打算放到SE阶段。与其匆匆在项目实战阶段弄个半生不熟,而后进入实际工做中接受他人对你的怀疑,不如……早死早超生~~~。php

       但是,咱们毕竟如今才刚学了Java一个月,代码都写的不溜呢,甚至都不知道目前掌握的知识能作点撒实际有用的工做,怎么就来个版本控制?版本控制是撒?java

       抄一段百科的版本控制解释:版本控制是指对软件开发过程当中各类程序代码、配置文件及说明文档等文件变动的管理,是软件配置管理的核心思想之一。git

       看到没,版本控制是一种思想,可是程序猿不跟你讲思想,跟你讲实实在在的东西,因此,实现这个思想的必定是个实实在在的工具。在最课程的整个学习过程当中,商业项目实战阶段代码的版本控制工具,咱们使用SVN。而,我的工具代码集,咱们要求使用git,放到github中。程序员

       为何要如今就开始体验版本控制呢?由于我曾经询问过不少学员,你们对于毕业后软件公司的真实开发流程很茫然。而最课程想要带你作的,就是提早适应真实的开发,让学员从尽量早的时刻,就参与到需求管理、版本控制、同行review、解决代码冲突、移行、测试、发布的整个过程。github

       咱们在培训班学习,重点毫不应该仅仅是编码知识(那还不如去自学看视频),而应该是如何使用学到的知识应用到真实的开发中。服务器

       来提早感知下,整个开发流程大概是个什么样子的吧eclipse

软件开发中的精简并行过程(SPP)分布式

       以上整个SPP过程包括:6大阶段、12个过程域、28个规程、31个文档模板。你有没有准备好到咱们最课程来感知一下呢?ide

       无论怎么样,让咱们先首先学习这整个过程当中最重要也是最基础的一环:版本控制吧。svn

 

1. 什么是版本控制

       上文已经简单介绍过了,如今咱们用白话来再介绍一下它有什么用:

       首先,能将代码提交到服务器,这样本机即便被炸掉了,或者你忽然离职消失了,只要服务器没被老板娘砸掉(什么,有这种事情?是的,回头给大家讲讲我一个客户的故事),公司的代码就都还在;

       其次,能将代码回退到之前的任何一次提交上。这是什么意思呢?好比,你一个月前写了一个功能:让APP的背景随手机壳颜色的变化而变化,可是一个礼拜前你按照产品经理的要求把功能修改成:让APP的背景随我心情的变化而变化。可是,怎么又一个可是?可是就是这么任性,可是这在实际的开发中就是这么容易出现。可是如今产品经理跑来告诉你:我不想要你上周刚实现的功能了,你把功能回退到一个月前的那个背景随手机壳颜色变化而变化的功能吧。此刻,你心中的心情应该是这样的:

       要知道,代码在本机但是已经覆盖了,这个时候,版本控制管理工具就能够发挥做用了,你能够将代码回退到历史上任何一个时刻。

       这里来个小插曲,要想不被产品经理欺负,能够尝试准备以下工具:

       最后,版本控制的另外一个重要功能是,任何稍微大型点的软件,都不多是一我的完成的,因此,咱们须要一个工具将团队成员的代码合并到一块儿,看上去像是一我的写的同样。因此,代码的提交和合并也是咱们真实开发的平常。

       好了,暂时对于初学者来讲,就讲到这吧。目前够用了。

2. SVN介绍

       SVN就是那个实现版本控制思想的工具。废话很少说,直接给出软件的下载地址:https://www.visualsvn.com/

 

3. Svn服务器端安装

       下载回来大概长这样

      双击安装

       如上选择,next

       选择标准安装

       注意哦,默认是不须要https的,若是有同窗手贱想尝试https,也是能够的。但我墙裂建议你不选择https,由于……在局域网中,没撒特别的意义。并且,在整个学习的过程当中,还要求其余同窗链接到你的源码服务器上,选择了https的话,有些同窗的电脑可能会连不上你的电脑。

       安装完毕在系统服务里有svn的服务,以下:

       服务器端在公司里,是真的安装在一台服务器上的。在咱们的学习过程当中,那就跟客户端同样安装在你本身的学习机上就好了。

4. Svn客户端安装

       客户端大体长以下这样

       咱们一路next下去就行,没什么特别须要注意的地方。

 

5. 配置svn server

       打开服务器管理界面,添加用户,按提示来,添加上你本身的用户名,好比:baobao

       仓库有了,就要给这个仓库分配权限,由于,你可不想让任何人都接触到代码。来吧,给你刚建立的用户添加代码的读写权限吧:

       完毕。

6. 访问svn

       访问svn其实就跟访问网站同样,也是有一个地址的,可是地址怎么获得呢?看下图

       而后,在本地任意文件夹中点右键

       粘贴刚才的地址,回车:

       你就能够看到下面的界面了

       这里默认已经建立了3个目录,每一个目录是何时,咱们会在项目管理的时候讲到,这里,咱们只须要记住,咱们全部的代码都放到trunk中就好了。

7. Elicpse插件安装

       那接下来要怎么把代码放到服务器上呢?一种方式是直接拖动文件到上面的窗口中去,可是咱们平时开发是在IDE中的(Ps:目前是eclipse,将来是idea)。那能不能直接从eclipse中提交代码到服务器呢?

       固然是能够的。

       可是,要完成这个功能,咱们就须要给eclipse装插件。这个插件叫subversive。下载地址在:

http://www.eclipse.org/subversive/

http://www.eclipse.org/subversive/previous-releases.php

       那怎么安装呢?首先是解压,而后把下面两个目录复制到eclipse对应的目录中去就能够了。

       而后,记得重启elicpse。

 

8. SUBVERSIVE CONNECTOR 安装

       可是,事情并不像咱们想象的那么简单。要说怎么java程序员这么苦逼呢。当咱们觉得可使用svn的时候,咱们还须要一个connector,下载地址在:

https://polarion.plm.automation.siemens.com/products/svn/subversive?utm_source=eclipse.org&utm_medium=link&utm_campaign=subversive

       因为咱们的subversive是3.0,故下载这个

       一样,安装也是执行目录copy

       重启eclipse,而后检查下:

       若是像上图同样,该有的都有了,那么咱们的安装就成功了。

9. 代码提交

       首先,像下图那样进行选择

       而后,在该页面new一个仓储,输入svn地址,获得:

       在trunk下建立一个文件夹,

       Ps1,这个文件夹最好和我们在eclipse中建立的项目名一致);

       Ps2,我示例中的项目叫:parent;

       回到项目视图,在项目上share project

       接着

       注意路径选择,路径的命名首先要定位到trunk下,而后再加上项目的名

       接下来,是提交代码。在项目名上面,右键->team->commit,出现以下界面

       首先,让咱们写上注释。注意,注释写的越详细越好,把你此次提交完成了什么功能都写上,省得咱们未来查看历史的时候,不知道本次提交是干什么用的。

       其次,咱们是提交所有文件吗?显然也不是,除了代码文件外,一些配置文件或者附属文件咱们不该该提交上来。

       可是,每次去提交的时候,选择提交的文件太麻烦了,那有没有一种一次性批量忽略的办法呢?固然是有的,以下图:

       要忽略这几个后缀:.settings,.project,.classpath

       提交后,在eclipse的项目上,会有受控标识,相似以下:

10. 查看历史

       在项目上右键->team->show history,看看会出现什么?

       好了,以上是咱们为了完成第一次大做业所要储备的版本控制的知识。更多的功能,等咱们慢慢后期挖掘中。

 

 

华丽分割线

===========================================================

1:最课程JavaEE+互联网分布式新技术开班进行中,来http://www.zuikc.com来报名吧;

2:更多技术文章和开班信息请加入,QQ群:

3:本文所涉及要下载的软件能够进群向老师索取;

4:SVN的教学视频能够进群向老师索取;

相关文章
相关标签/搜索