zoukankan      html  css  js  c++  java
  • eclipse egit(版本回退)

    在公司一年多了,用到的项目都是用svn代码托管,没有git 的用武之地,趁国庆假期稍微自学了一下,然后人比较懒,不愿用原生敲命令行的形式,就在eclipse上学学怎么用git,话说回来用了svn再来学git,既容易也难,难在于git的命令更多,上手也需要时间。我学习用的是廖雪峰的git教程,讲得很好,浅显易懂,他敲得是命令行,我翻译成了如何在eclipse中操作,也是一样学。

    廖雪峰的git教程地址:

    http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

    1. git简介 
      这一段可以直接看廖雪峰教程的介绍,了解svn与git的本质区别是比较重要的。

    这里写图片描述 
    2. 创建版本库和基本操作 
    什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。

    在一个java项目中,整个项目就是一个仓库,都归git管理,eclipse都集成git插件,我们只需在新建的项目中 右键项目Team-》share project-》选择git-》然后按操作完成,最后finish 
    这里写图片描述

    成功的话就是下面这样: 
    这里写图片描述 
    有一个小箭头,代表git已经开始托管这个项目。

    然后我们在这个项目下面编写一个java文件 
    这里写图片描述

    最后我们提交这个文件到git仓库: 右键项目Team-》commit

    在廖雪峰的教程中,一个文件提交 要先 add 然后 commit,EGIT中只要Commit就可以默认将未监控的文件添加到索引再提交更新,不需要分开操作(egit中的Add to index可以将文件加入git索引,进行版本监控)

    还要注意备注信息一定要写,下面要提交的文件除了我们的demo.java,还有一些项目的配置文件,也一并提交。 
    这里写图片描述

    然后点击eclipse 的window-》show view ,找到git repositories 
    这里写图片描述

    左边找到git就是我们的项目,里面有分支,工作目录等信息,右键git项目-》show in -> history 可以看到右边我们的操作信息,包括刚刚我们提交的操作 
    这里写图片描述

    重要概念: 
    右框中的id的含义:你看到的右边的id e414f3a 是commit id(版本号),和SVN不一样,Git的commit id不是1,2,3……递增的数字,而是一个SHA1计算出来的一个非常大的数字,用十六进制表示,而且你看到的commit id和我的肯定不一样,以你自己的为准。为什么commit id需要用这么一大串数字表示呢?因为Git是分布式的版本控制系统,后面我们还要研究多人在同一个版本库里工作,如果大家都用1,2,3……作为版本号,那肯定就冲突了。每提交一个新版本,实际上Git就会把它们自动串成一条时间线。 
    右框中的master的含义:每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。 
    右框中的head的含义:git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是当前最新的提交e414f3a 

    现在我们再提交一次,这次我们在demo文件里添加一个方法get(),然后history框里会显示这次提交,head也及时指向了最新的提交。 
    这里写图片描述

    现在,我们需要回退到 第一次导入git时的版本,也就是回退到版本号为e414f3a。 
    我们可以直接在history框中选择我们要回退的版本,然后右键reset-》hard,点确定,然后我们的第二次提交版本就消失了,demo.java文件也还原成了第一次导入的模样,head指针也回退了。 
    这里写图片描述

    我们再想回去怎么办?

    只要之前提交过的版本都被git记录了下来,在git repositories框中,右键项目-》show in-》git reflog ,git reflog 里面详细记录了你每次的操作 
    这里写图片描述

    我们想回去“第二次提交”的版本,只需要查找第二次提交的版本id,就是95bc224,在git repositories框中右键reset,输入版本号,就可以了。 
    这里写图片描述

    demo.java文件又还原成了第二次提交时的模样,廖雪峰教程里面有一章“工作区和暂存区”概念很重要,弄明白了暂存区,就弄明白了Git的很多操作到底干了什么。

    转自:http://m.blog.csdn.net/article/details?id=52739343

  • 相关阅读:
    操作 Java 数组的 12 个最佳方法
    详解 JavaScript 中 splice() 方法
    Java 读取 .properties 配置文件的几种方式
    表单中单选、多选、选择框值的获取及表单的序列化
    一个调出上下文菜单的实例
    跨浏览器的事件侦听器和事件对象
    动态加载js和css
    php语言实现的7种基本的排序方法
    CORS(跨源资源共享)实战
    ubuntu中LAMP环境搭建及ubuntu语言和输入法设置
  • 原文地址:https://www.cnblogs.com/duex/p/6389999.html
Copyright © 2011-2022 走看看