git pull命令

git pull命令作用:从另一个存储库或本地分支关联的远端分支获取最新代码,并与本地代码资源整合。
git pull命令执行过程:取回远程主机某个分支的更新,再与本地的指定分支合并(可能存在需手动解决的冲突)。

使用语法

git pull [options] [<repository> [<refspec>…]]

描述

将远程存储库中的更改合并到当前分支中。在默认模式下,git pullgit fetch + git merge FETCH_HEAD的简写版。

更准确地说,git pull使用给定的参数运行git fetch,并调用git merge将检索到的分支头合并到当前分支中。 若使用--rebase,它运行git rebase而不是git merge

示例

以下是一些示例 -

$ git pull <远程主机名> <远程分支名>:<本地分支名>

比如,要取回origin主机的next分支,与本地的master分支合并,需要写成下面这样 -

$ git pull origin next:master

如果远程分支(next)要与当前分支合并,则冒号后面的部分可以省略。上面命令可以简写为:

$ git pull origin next

上面命令表示,取回origin/next分支,再与当前分支合并。实质上,这等同于先做git fetch,再执行git merge

$ git fetch origin
$ git merge origin/next

在某些场合,Git会自动在本地分支与远程分支之间,建立一种追踪关系(tracking)。比如,在git clone的时候,所有本地分支默认与远程主机的同名分支,建立追踪关系,也就是说,本地的master分支自动”追踪”origin/master分支。

Git也允许手动建立追踪关系。

$ git branch --set-upstream master origin/next

上面命令指定master分支追踪origin/next分支。

如果当前分支与远程分支存在追踪关系,git pull就可以省略远程分支名。

$ git pull origin

上面命令表示,本地的当前分支自动与对应的origin主机”追踪分支”(remote-tracking branch)进行合并。

如果当前分支只有一个追踪分支,连远程主机名都可以省略。

$ git pull

上面命令表示,当前分支自动与唯一一个追踪分支进行合并。

如果合并需要采用rebase模式,可以使用–rebase选项。

$ git pull --rebase <远程主机名> <远程分支名>:<本地分支名>

git fetch和git pull的区别

  1. git fetch:相当于是从远程获取最新版本到本地,不会自动合并。
$ git fetch origin master
$ git log -p master..origin/master
$ git merge origin/master

以上命令的含义:

  • 首先从远程的originmaster主分支下载最新的版本到origin/master分支上
  • 然后比较本地的master分支和origin/master分支的差别
  • 最后进行合并

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

$ git fetch origin master:tmp
$ git diff tmp 
$ git merge tmp

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

git pull origin master

上述命令其实相当于git fetch 和 git merge
在实际使用中,git fetch更安全一些,因为在merge前,我们可以查看更新情况,然后再决定是否合并。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/451550.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/451550.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RPM的用法

RPM 有五种基本的操作方式(不包括创建软件包): 安装, 卸载, 升级, 查询,和验证。 下面我们就来逐一的讲解吧。 一、 安装RPM包 RPM 软件包通常具有类似foo-1.0-1.i386.rpm 的文件名。其中包括 软件包的名称(foo)&#xff0c;版本号(1.0)&#xff0c;发行号(1)&#xff0c; 和 硬…

Unix 多进程编程

一.多进程程序的特点由于UNIX系统是分时多用户系统, CPU按时间片分配给各个用户使用, 而在实质上应该说CPU按时间片分配给各个进程使用, 每个进程都有自己的运行环境以使得在CPU做进程切换时不会"忘记"该进程已计算了一半的"半成品". 以DOS的概念来说, 进程…

Redis单线程模型是什么?

参考文章&#xff1a; redis 单线程的理解 谢谢作者分享&#xff01;

寂静的时候

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 每每听到熟悉的旋律&#xff0c;终又会骤然就无法抑制排山倒海般的忧伤... 就这样想往若已经年迈到只能坐在夕阳余晖里遥望远方该多好.…

@staticmethod和@classmethod的作用与区别

一般来说&#xff0c;要使用某个类的方法&#xff0c;需要先实例化一个对象再调用方法。 而使用staticmethod或classmethod&#xff0c;就可以不需要实例化&#xff0c;直接类名.方法名()来调用。 这有利于组织代码&#xff0c;把某些应该属于某个类的函数给放到那个类里去&…

前端开发注意事项(HTML与CSS进阶)

HTML 与 CSS 进阶 Img 标签 alt 属性 一定要添加 用于图片描述 给机器看的&#xff0c;如果图片加载失败&#xff0c;会显示 alt <img src"" alt""/> 为 img 添加 图片注释 建议做法为 figure(图形) 和 figcaption [caption(字幕)]<figure>…

如果你懂我…

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 想往的世界&#xff0c;有风如深秋的柳絮… 翻飞在遥远的寂静里… 若冷落…若别离… 若守候…若赤诚… 若我…

[NOI2005]维护数列 恶心到毁天灭地的splay

传送门 debug到死2333. 虽然说是splay维护序列模板&#xff0c;作为蒟蒻的我还是GG %%%考场A的dalao Orz Orz. 其实不开long long也行&#xff0c;inf开成0x3f3f3f3f也可&#xff08;flag,欢迎推翻&#xff09; 就当存个板子吧. #include<bits/stdc.h> #include<cs…

Python的from import和import的区别

对于from...import...&#xff0c;其意义具体是from Module import Function或Class等&#xff0c;这个只是从模块中导入一个或几个函数或类的做法。另外一个常见的是import Module&#xff0c;就是把整个模块中得东西都导入&#xff0c;所以你后面的程序就都可以使用了。另外还…

静态代理、动态代理、AOP

参考文章&#xff1a; Java中的代理模式——静态代理以及分析静态代理的缺点 Java中动态代理的两种方式JDK动态代理和cglib动态代理以及区别 Spring中的AOP以及切入点表达式和各种通知

Linux系统中解压缩指令汇总

.tar 解包&#xff1a; tar xvf FileName.tar 打包&#xff1a;tar cvf FileName.tar DirName &#xff08;注&#xff1a;tar是打包&#xff0c;不是压缩&#xff01;&#xff09; --------------------------------------------- .gz 解压1&#xff1a;gunzip FileName.gz 解…

python中的@

函数修饰符 ‘’ 用做函数的修饰符&#xff0c;可以在模块或者类的定义层内对函数进行修饰&#xff0c; 出现在函数定义的前一行&#xff0c;不允许和函数定义在同一行 一个修饰符就是一个函数&#xff0c;它将被修饰的函数作为参数&#xff0c;并返回修饰后的同名函数或其他可…

这样想起...

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 // 看到一张精致的自然风景图片&#xff0c;心生向往. 在海的一个小小角落边&#xff0c;有一寓不很大的房子&#xff0c;暮色浸染的云彩…

python几种括号表示的类型

python语言最常见的括号有三种&#xff0c;分别是&#xff1a;小括号( )、中括号[ ]和大括号&#xff08;也叫做花括号{ }&#xff09;。其作用也各不相同&#xff0c;分别用来代表不同的python基本内置数据类型。 1、python中的小括号( )&#xff1a;代表tuple元组数据类型&am…

IT巨头互掐云存储:Dropbox能否一马当先

随着北京时间4月25日Google Drive横空出世&#xff0c;微软也迫不及待的发布了SkyDrive的大量更新。各大巨头进军云存储市场&#xff0c;激烈角逐的意向已经昭然可见。网友针对此事纷纷发表热议。苹果、微软、谷歌三巨头加上一个Dropbox各出各的云存储高招&#xff1a;微软SkyD…

Spring集成redis(Spring Data Redis)

2019独角兽企业重金招聘Python工程师标准>>> 转载地址&#xff1a;http://blog.csdn.net/zhu_tianwei/article/details/44923001 Spring-data-redis是spring大家族的一部分&#xff0c;提供了在srping应用中通过简单的配置访问redis服务&#xff0c;对reids底层开发…

python中利用re模块使用正则表达式

Python通过re模块提供对正则表达式的支持。使用re的一般步骤是先使用re.compile()函数&#xff0c;将正则表达式的字符串形式编译为Pattern实例&#xff0c;然后使用Pattern实例处理文本并获得匹配结果&#xff08;一个Match实例&#xff09;&#xff0c;最后使用Match实例获得…

Java三大变量分别是类变量、实例变量和局部变量

什么是变量:就是内容可以改变的量&#xff0c;它与常量相对应。而这三大变量实际上是从变量的作用域来定义和划分的。 1、类变量&#xff0c;是归属类的变量&#xff0c;它是通过在定义类的属性的时&#xff0c;增加static修饰符&#xff0c;所以又称为静态变量。类变量不仅可…

路途

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 PS : 这应该是08年写的了吧.... 像是追寻明天的沧海一束&#xff0c; 不知道什么时候开始走上这样熟悉的路途. 当天空开始一点一点变…

redux 源码详解

redux 单向数据流的由来 Flux将应用分成四个部分;view 视图层;Action 视图层发出的消息&#xff1b;(改变store里面的数据)Dispatch(派发器)Store (数据层) : 用来存在应用的状态(数据)&#xff0c;一旦发生变动,就要提醒view更新页面。redux单向数据流&#xff1a; 具体详情请…