zoukankan      html  css  js  c++  java
  • Eclipse中使用版本控制----Git

          之前在做软件开发的过程中使用的版本控制软件大多是cvs,svn等等,这些都属于cvcs,及中央版本控制系统,其特点是存在一个中央库,开发者首先从中央库中下载代码,编辑,然后提交。很明显的一个特点就是使用cvcs类型的版本控制需要开发者都连接到中央库,所以大家需要联网,如果想在家里做开发,那么需要你的svn服务器具有真实ip。而今天我介绍的Git也是一款版本控制软件,而且已经具有代替前面两种的趋势,Git属于dvcs,就是分布式版本控制系统。也就是没有一个所谓的中央库(但是会将你的最终代码放在某一个位置,在github上提供免费注册)。比如当你从github上下载一个开源项目,那么在你的电脑上就会存在该项目的一个完整的拷贝,以后你的电脑也就成为了一个仓库,这个库和svn中的中央库功能有些类似,只不过它仅仅给你一个人用。当你开发完后,就可以将你的代码push到远程库。(呵呵,表达能力有限,不知道说清楚了没...)


    ok,下面步入正题:

    1、安装egit插件,这个在此不作介绍。

    2、安装完后,首先需要进行配置:

    window->preference->team->Git->Configuration  点击Add Entry

    key   user.name=*****

    value  user.email=***@****

    用来标识某一个开发者。

    3、a、新建一个java项目GitDemo,在GidDemo上面右键选择Team-->shareProject,完成之后Team->commit

         

    b、选择项目,右键Team->commit。记住此时你的项目已经保存到本地仓库了,如上图E:GitDemo就是我的本地仓库。


    c、到Github上注册一个账号,并建立一个仓库。在此不作详细介绍,我给出我自己建立的一个仓库

    https://github.com/yuanzeyao2008/Hello.git

               d、选中项目,右键->Team-remote->push,将你自己的仓库地址填进去,用户名和密码貌似不用填


       e、下一步如图:

             f、一直下一步,知道完成,完成之后你可以到github上看成功没。


    下面介绍一下如何实现版本控制:

    在这里,我定义两个开发者:A,B.

    A和B对开源项目Open都非常感兴趣,所以他们讲该项目下载下来,并导入自己的工程,根据上面的介绍,此时在本地需要建立一个本地库:

    • 导入项目:Import->Git->fromGit,出现如下界面:

             在这里,由于我们使用远程库,所以选择URI,接下来的界面如下:

     

    下一步

    下一步

    下一步

       此处有三种方法:

    1.        Import existing projects:如果你的库中的working Directory中的项目中有.project这个文件,那么你可以使用这个
    2.        Use  the New Project wizard,貌似相当于新建一个项目,我很少使用,不是很清楚
    3.        Import as General Project,如果没有.project,那么可以使用这个。


    完成之后,项目就导入到你的 Eclipse中了。

    现在A开发者创建了一个Student类

    public class Student

    {

    int id;
    }


    B开发者也开发了一个Student 类

    public class Student

    {

    int mid;
    }


    但是A先提交到远程库,B后提交,如果B现在直接提交肯定是不行的,这点和svn中类似,先要取回远程库中最新代码,步骤:右键Team->pull,就行了,如果发现有冲突,右键->Team->Merge Too,这是B开发者需要和A开发者协商如何处理这个这个冲突,比如协商结果就是将id字段改为pid,然后B提交到远程服务器,这是A通过pull取回最新代码,进行简单修改即可。



     

          

  • 相关阅读:
    前端攻城狮学习笔记九:让你彻底弄清offset
    JavaScript中Element与Node的区别,children与childNodes的区别
    JavaScript代码优化实战之一:缓存变量,关键字过滤
    【转】纯CSS画的基本图形(矩形、圆形、三角形、多边形、爱心、八卦等),NB么
    包装对象——JavaScript中原始类型拥有属性的原因
    关于两个容积不同的瓶子中装水可以得到哪些精确值的问题的算法
    JavaScript中判断鼠标按键(event.button)
    累了休息一会儿吧——分享一个JavaScript版扫雷游戏
    用CSS让未知高度内容垂直方向居中
    空间换时间,把递归的时间复杂度降低到O(2n)
  • 原文地址:https://www.cnblogs.com/riskyer/p/3268699.html
Copyright © 2011-2022 走看看