Git中从远程的分支获取最新的版本到本地有这样2个命令:

1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge

<p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"><span style="line-height: 19px; font-family: 'Trebuchet MS', Tahoma, Arial; font-size: 13px;"><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">    </span></span><br style="line-height: 23px;" /><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">git fetch origin master</span><br style="line-height: 23px;" /><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">git log </span><span class="pun" style="line-height: 23px; color: rgb(102, 102, 0);">-</span><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">p master</span><span class="pun" style="line-height: 23px; color: rgb(102, 102, 0);">..</span><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">origin</span><span class="pun" style="line-height: 23px; color: rgb(102, 102, 0);">/</span><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">master</span><br style="line-height: 23px;" /><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">git merge origin</span><span class="pun" style="line-height: 23px; color: rgb(102, 102, 0);">/</span><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">master</span></p>

以上命令的含义:

   首先从远程的origin的master主分支下载最新的版本到origin/master分支上

   然后比较本地的master分支和origin/master分支的差别

   最后进行合并

   上述过程其实可以用以下更清晰的方式来进行:

<p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"><span style="font-family: 'Trebuchet MS', Tahoma, Arial; font-size: 12px; line-height: 23px;"><span style="line-height: 19px;"><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">git fetch origin master</span><span class="pun" style="line-height: 23px; color: rgb(102, 102, 0);">:</span><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">tmp</span></span></span>
<span style="font-family: 'Trebuchet MS', Tahoma, Arial; font-size: 12px; line-height: 23px;"><span style="line-height: 19px;"><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">git diff tmp </span></span></span>
<span style="font-family: 'Trebuchet MS', Tahoma, Arial; font-size: 12px; line-height: 23px;"><span style="line-height: 19px;"><span class="pln" style="line-height: 23px; color: rgb(0, 0, 0);">git merge tmp</span></span></span></p>

从远程获取最新的版本到本地的test分支上

   之后再进行比较合并

2. git pull:相当于是从远程获取最新版本并merge到本地

<p style="line-height: 23px; margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"><span class="pln" style="color: rgb(0, 0, 0);">git pull origin master</span></p>

上述命令其实相当于git fetch 和 git merge

在实际使用中,git fetch更安全一些

因为在merge前,我们可以查看更新情况,然后再决定是否合并

结束

git fetch pull checkout区别的更多相关文章

  1. Git fetch & pull 区别

    1 简单概括 2 git fetch 的用法 3 git pull的用法 文章来源:https://blog.csdn.net/qq_36113598/article/details/78906882

  2. Git fetch & pull

    转:https://blog.csdn.net/qq_36113598/article/details/78906882 1.简单概括 先用一张图来理一下git fetch和git pull的概念: ...

  3. git fetch & pull详解

    1.简单概括 先用一张图来理一下git fetch和git pull的概念: 可以简单的概括为: git fetch是将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中. 而g ...

  4. Git 协作:Fetch Pull Push Branch Remote Rebase Cherry-pick相关

    前言 学习git的时候,我们首先学习的是最常用的,自己独立开发Software时用的命令: git init //初始化git仓库 git add <file_name> //将文件添加到 ...

  5. git fetch和git pull对比

    情景重现 你:面试官您好,我是xxx,毕业于xxx学校,工作xxx年,精通各种git命令. 面试官:您好您好,我问个常见的问题考察一下您的技术水平哈.请问,git pull和git fetch有什么区 ...

  6. git:Git fetch和git pull的区别, 解决Git报错:error: You have not concluded your merge (MERGE_HEAD exists).

    Git fetch和git pull的区别, 解决Git报错:error: You have not concluded your merge (MERGE_HEAD exists). 解决办法一:保 ...

  7. git fetch和git pull之间的区别--转载

    原文地址:http://blog.csdn.net/a19881029/article/details/42245955 git fetch和git pull都可以用来更新本地库,它们之间有什么区别呢 ...

  8. GIT(6)----fork和clone的区别,fetch与pull的区别

    参考资料: [1].Git学习笔记:fork和clone的区别,fetch与pull的区别 [2].在Github和Git上fork之简单指南

  9. git clone、git pull和git fetch的用法及区别

    声明:码字不易,转载请注明出处,欢迎文章下方讨论交流.Git 常用命令速查表 最近在一个学习小组里学习AI的课程,我们所有的学习资料和homework都放在gitlab上.今天一个小队友从gitlab ...

随机推荐

  1. appium元素定位及操作

    1.测试用例准备 数据准备   前提条件   操作步骤    预期结果 2.TestNG 用例组织:@Test @Before Class 结果验证:Assert 数据驱动:@DataProvide ...

  2. Java代码之输出参数和(强制类型转换)

    说明(因为Java中java Application的参数都是默认的字符型的数据,所以需要强制类型转换这一步骤) 设计思想: 向系统里输入若干个参数,计算出参数个数,利用for语句计算出参数的和.(程 ...

  3. javascript keycode

    keycode    8 = BackSpace BackSpacekeycode    9 = Tab Tabkeycode   12 = Clearkeycode   13 = Enterkeyc ...

  4. JZ2440串口打印字符作为调试

    /* * 初始化UART0 * 57600,8N1,无流控 */ void uart0_init(void) { GPHCON |= 0xa0; // GPH2,GPH3用作TXD0,RXD0 GPH ...

  5. 关于安装第三方模块和PILLOW

    看廖雪峰老师这一节的教程卡在这里挺久了 在谷歌上了搜了很久,最后根据这个教程上解决了这个问题 http://www.yihaomen.com/article/python/566.htm 觉得自己好蠢 ...

  6. java变量初始化

    java全局变量会自动初始化,但局部变量不会自动初始化.当我们新建一个对象的时候,java会申请一个区域存放类的数据,而成员变量就是类的数据,也是放在这个内存区域中,jvm申请内存时初始化.而方法中变 ...

  7. PostgreSQL 命令

    查看Schema: select * from information_schema.schemata; 查看使用的配置文件: SHOW config_file;

  8. javascript的insertBefore、insertAfter和appendChild简单介绍

      target.insertBefore(newChild,existingChild)参数说明:1.target:被添加节点和现有节点的父节点.2.newChild:将要被插入的节点.3.exis ...

  9. 自定义MVC框架(二) -基于XML文件

    1.oracle的脚本 create table STUDENT ( sid NUMBER primary key, sname ), age NUMBER, pwd ) ) create seque ...

  10. Entity Framework Code First -- Migrations 迁移

    在开始使用迁移(Migrations)之前,我们需要一个 Project 和一个 Code First Model, 对于本文将使用典型的 Blog 和 Post 模型 创建一个新的控制台应用程序 M ...