Git管理工具对照(GitBash、EGit、SourceTree)

GitBash是採用命令行的方式对版本号进行管理,功能最为灵活强大,可是由于须要手动输入希望改动的文件名称,所以相对繁琐。

EGit是Eclipse的Git插件,最为纠结的一个软件,由于开发时直操作非常方便,尤其是有svn开发情节的人更热衷于这样,只是EGit中有非常多bug和不人性化的东西,让人吐血,所以

一句话EGit并不能解决全部Git问题,开发时必须部分依赖于其它Git管理工具。一会一一列举。

SourceTree是近期应用的一个软件,一句话概括,既有GitBash的命令行,又有EGit的图形化管理,用户界面非常人性化,Eclipse+GitBash全然能够应付版本号管理。

那么以下我结合项目中开发遇到的问题一一解说一下:

)。

图(1)

B. 然后再次改动,发现以下的工作区中也有这个页面了(图2)。

(图2)

C. 如今就能够对此文件进行丢弃了,假设将以下文件丢弃(checkout),那么该文件将变为缓冲区中的文件,假设将缓冲区文件丢弃,实际上回到了近期的commit版本号了(reset操作)。

这里注意,假设该文件commit了,那么checkout实际上回不到commit之前的版本号的,须要reset。以下具体介绍一下reset命令。

(5) 对于reset功能的应用。这里先普及一下Git理念的事:

A. 明白一点,每一次commit都是相应着一批操作而不是相应一个文件。

这点和SVN的设计理念全然不一样。

这也造成了一个必定的结局:SVN的分支存的是一个project,所以每签出一个分支实际上都是签出一个project。

而Git的分支存的是改动的记录,所以每签出一个分支,实际上都是对原project的一次覆盖。

B.在开发过程中大家可能会遇到这样一个问题:Pull之后,会出现非常多别人提交的代码须要你本地再又一次提交一次,那么这个原因是这种,当然这个是我个人的理解:Git会把每一次pull结果做两个处理:

B1.假设pull之后,本地没有不论什么问题,那么不须要再次提交别人改动的东西了,仅仅须要继续你的改动,push就能够了(正常情况下一版都是这样)。

B2.假设pull之后,本地有问题,大部分情况是冲突的情况,那么Git会把本次当做一次不成功的pull(那么通俗的来讲,git会觉得,你觉得不成功,那么你把这次版本号依照你的想法改一下,再提交吧),所以你做完删减之后,须要把刚才别人的东西再提一次作为一个新的commit。

(6) 对于checkout某一次提交,SourceTree也非常人性化,会给出非常人性化的提示。注意checkout之后,你的project当前不属于不论什么分支,只是能够基于此又一次创建一个分支,非常方便。

总结一下:这里仅仅列出了一些关键的问题和不同点,当然工具的选择因人而异。大家能够在工作中慢慢体会,假设有问题欢迎大家提出,给我宝贵的意见。(待续)

Git管理工具对照(GitBash、EGit、SourceTree)的更多相关文章

  1. Git管理工具对比(GitBash、EGit、SourceTree)

    Git管理工具对比(GitBash.EGit.SourceTree) GitBash是采用命令行的方式对版本进行管理,功能最为灵活强大,但是由于需要手动输入希望修改的文件名,所以相对繁琐. EGit是 ...

  2. Git管理工具对比(GitBash、EGit、SourceTree)(转载)

    Git管理工具对比(GitBash.EGit.SourceTree) GitBash是采用命令行的方式对版本进行管理,功能最为灵活强大,但是由于需要手动输入希望修改的文件名,所以相对繁琐. EGit是 ...

  3. GitBash、EGit、SourceTree三个Git管理工具对比

    Git管理工具对比(GitBash.EGit.SourceTree) GitBash是采用命令行的方式对版本进行管理,功能最为灵活强大,但是由于需要手动输入希望修改的文件名,所以相对繁琐. EGit是 ...

  4. Git 管理工具 基本用法

    git管理工具基本操作命令: 1. 提交 git push origin dev 2.拉取分支: git pull 3.创建并转换分支: git switch -c dev; 4.直接切换到已有分支: ...

  5. 敏捷开发系列学习总结(4)—Git管理工具sourcetree的安装

    现在代码管理都流行用git了,小编以前用过clearcase, svn,vss等.现在用了git后,发现git才是最好的,我觉得它最吸引人的地方应该是它的分布式管理吧.git的具体学习,读者可自己去网 ...

  6. git管理工具的使用教程

    Git入门教程 1.   概述     对于软件版本管理工具,为什么要选择Git?      你真正学会使用Git时, 你就会觉得这个问题的回答是非常自然的.然而当真正需要用文字来回答时,却觉得文字好 ...

  7. Java的Git管理工具Gitblit

    From:http://www.oschina.net/p/gitblit Gitblit 是一个纯 Java 库用来管理.查看和处理 Git 资料库.相当于 Git 的 Java 管理工具. 下载地 ...

  8. Mac 10.12安装Git管理工具SourceTree

    说明:Git的GUI工具应该是这款最好用. 下载: (链接: https://pan.baidu.com/s/1mhRr35Y 密码: vv67)

  9. 新浪代码部署手册 git管理工具

    目前新浪云上的应用支持通过Git和SVN来部署代码. Git仓库地址 https://git.sinacloud.com/YOUR_APP_NAME SVN仓库地址 https://svn.sinac ...

随机推荐

  1. 关于在打包Jar文件时遇到的资源路径问题(二)

    在关于<关于在打包Jar文件时遇到的资源路径问题(一)>中,以及描述了当资源与可执行JAr分离时的资源路径代码的编写问题,后来想了想,为什么将<Java核心技术卷一>中的程序1 ...

  2. Swift - 设置程序的应用图标和启动界面

    一个应用,无论发布到App Store,还是安装到用户的屏幕上,都需要一个标志性的图标.同时,在应用启动时也要有个启动画面,否则启动时将会是纯黑的屏幕. 1,在项目的“General”选项卡下的“Ap ...

  3. Hibernate核心接口

    1.Configuration接口 Configuration负责管理Hibernate的配置信息. 2,SessionFactory接口 SessionFactory负责创建Session实例,能够 ...

  4. CSS中float属性和clear属性的一些笔记

    在学习CSS的最后一部分内容中,float属性和clear属性比较难以用语言描述,因此在笔记本中无法准确的记录这两个属性的用法.所以在博客园上以图文的形式记录这两种属性的特征,以备以后查阅. 首先,定 ...

  5. OCA读书笔记(8) - 管理用户安全

    创建用户:create user +用户 default tablespace + 表空间名 identified + 验证方式 SQL> create user easthome profil ...

  6. SQL视图和多表连接

    本篇博客关注的焦点是视图的使用以及视图和多表连接的配合.以便可以了解视图,以及更好的使用视图. 首先,还是要说明一下视图的定义:视图是基于SQL语句的结果集的可视化虚拟表,换句话说视图就是SQL查询结 ...

  7. Tokyo Tyrant(TTServer)系列(四)-tcrmgr远程管理与调试

    Tokyo Tyrant(TTServer)系列-tcrmgr(远程管理与调试) tcrmgr是TokyoTyrant的管理工具,对ttserver进行管理与执行命令: 通过输入tcrmgr回车,能够 ...

  8. [C#基础] 委托

    什么是委托 委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大量使用If-Else(Switch)语句,同时使得程序具有 ...

  9. linux 终端控制-- 多彩输出 格式排版

    linux 终端控制-- 多彩输出 格式排版 在unix/linux的终端下,怎么控制终端输出的颜色和格式呢,当然了有专门的工具,tput,但是能被terminal直接读懂的格式化字符串更通用. 先来 ...

  10. LinkedHashMap相关信息介绍(转)

    Java中的LinkedHashMap此实现与 HashMap 的不同之处在于,后者维护着一个运行于所有条目的双重链接列表.此链接列表定义了迭代顺序,该迭代顺序通常就是将键插入到映射中的顺序(插入顺序 ...