git fetch命令用于从另一个存储库下载对象和引用。

使用语法

git fetch [<options>] [<repository> [<refspec>…]]
git fetch [<options>] <group>
git fetch --multiple [<options>] [(<repository> | <group>)…]
git fetch --all [<options>]
Shell

描述

从一个或多个其他存储库中获取分支和/或标签(统称为“引用”)以及完成其历史所必需的对象。 远程跟踪分支已更新(Git术语叫做commit),需要将这些更新取回本地,这时就要用到git fetch命令。

默认情况下,还会获取指向正在获取的历史记录的任何标签; 效果是获取指向您感兴趣的分支的标签。可以使用--tags--no-tags选项或通过配置远程.<name>.tagOpt 来更改此默认行为。 通过使用显式提取标签的refspec,可以获取不指向您感兴趣的分支的标签。

git fetch可以从单个命名的存储库或URL中获取,也可以从多个存储库中获取,如果给定了<group>,并且配置文件中有一个远程<group>条目。

获取的参考名称以及它们所指向的对象名称被写入到.git/FETCH_HEAD中。 此信息可能由脚本或其他git命令使用,如git-pull

示例

以下是一些示例 -

1.更新远程跟踪分支

$ git fetch origin
Shell

上述命令从远程refs/heads/命名空间复制所有分支,并将它们存储到本地的refs/remotes/ origin/命名空间中,除非使用分支.<name>.fetch选项来指定非默认的refspec

2.明确使用refspec

$ git fetch origin +pu:pu maint:tmp
Shell

此更新(或根据需要创建)通过从远程存储库的分支(分别)pumaint提取来分支本地存储库中的putmp

即使没有快进,pu分支将被更新,因为它的前缀是加号; tmp不会。

3.在远程分支上窥视,无需在本地存储库中配置远程

$ git fetch git://git.kernel.org/pub/scm/git/git.git maint
$ git log FETCH_HEAD
Shell

第一个命令从 git://git.kernel.org/pub/scm/git/git.git 从存储库中获取maint分支,第二个命令使用FETCH_HEAD来检查具有git-log的分支。

4.将某个远程主机的更新

$ git fetch <远程主机名>
Shell

要更新所有分支,命令可以简写为:

$ git fetch
Shell

上面命令将某个远程主机的更新,全部取回本地。默认情况下,git fetch取回所有分支的更新。如果只想取回特定分支的更新,可以指定分支名,如下所示 -

$ git fetch <远程主机名> <分支名>
Shell

比如,取回origin主机的master分支。

$ git fetch origin master
Shell

所取回的更新,在本地主机上要用”远程主机名/分支名”的形式读取。比如origin主机的master分支,就可以用origin/master读取。

git branch命令的-r选项,可以用来查看远程分支,-a选项查看所有分支。

$ git branch -r
origin/master$ git branch -a
* masterremotes/origin/master
Shell

上面命令表示,本地主机的当前分支是master,远程分支是origin/master

取回远程主机的更新以后,可以在它的基础上,使用git checkout命令创建一个新的分支。

$ git checkout -b newBrach origin/master

上面命令表示,在origin/master的基础上,创建一个新分支:newBrach

此外,也可以使用git merge命令或者git rebase命令,在本地分支上合并远程分支。

$ git merge origin/master
# 或者
$ git rebase origin/master
Shell

上面命令表示在当前分支上,合并origin/master

转载于:https://www.cnblogs.com/lizhang4/p/7428573.html

git fetch 命令相关推荐

  1. git fetch命令详解

    git fetch 一旦远程主机的版本库有了更新(Git术语叫做commit),需要将这些更新取回本地,这时就要用到git fetch命令. $ git fetch <远程主机名> 上面命 ...

  2. 远程仓库与 fetch 命令——Git 学习笔记 20

    远程仓库是指托管在因特网或其他网络(比如局域网)中的版本库. 你可以有好几个远程仓库,通常有些仓库对你只读,有些则对你可读可写. 与他人协作涉及管理远程仓库以及根据需要推送或拉取数据. 查看远程仓库 ...

  3. Git 常用命令总结

    为什么80%的码农都做不了架构师?>>>    话不多说,直接上图,下图描述了一个正常的代码提交以及回退流程. 这里顺带提一下几个概念: 工作区和暂存区 ** 工作区(working ...

  4. #39;git pull#39;和#39;git fetch#39;有什么区别?

    主持人注意:鉴于此问题已经发布了67个答案 (其中一些已删除),请在发布另一个问题之前考虑您是否正在贡献新内容 . git pull和git fetch什么区别? #1楼 我花了一点时间来了解有什么区 ...

  5. git fetch -p 获取远程仓库的新分支以及删除远程仓库已删除的分支

    一.需求 需求是我和同事合作开发一个项目.同事要新建一个分支,然后,我这边拉取这个分支即可. 然而同事新建分支并且推送到远程仓库之后,我这边通过git branch -a并不能看到这个分支. 二.解决 ...

  6. Git fetch pull 详解

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

  7. git fetch 与 git pull

    文章目录 git flow 流程 git fetch 与 git pull 区别 git fetch 工作流程 git flow 流程 先来看一张图吧: 大致流程是这样的:我们在本地(工作区)编写好代 ...

  8. git fetch - git merge - git pull 指令

    git fetch - git merge - git pull 指令 Incorporates changes from a remote repository into the current b ...

  9. git fetch学习之旅

    1.2.常用术语 1).仓库(Repository) 受版本控制的所有文件修订历史的共享数据库 2).工作空间(Workspace)  本地硬盘或Unix 用户帐户上编辑的文件副本 3).工作树/区( ...

最新文章

  1. sqlalchemy.exc.DataError: (pymysql.err.DataError) (1366, “Incorrect string value: ‘\\xE6问题解决
  2. Tensorflow 错误总结:ImportError: cannot import name add_newdocs.
  3. 【机器视觉】 HDevelop语言基础(四)-流程控制语句
  4. spring配置主库从库_spring下的数据库主从分离(下)
  5. 怎么把word转换pdf,pdf转换word ,pdf转换成高清图片
  6. 逼自己玩命学了6个多月,吃透了这19个架构视频!分享给你,让你今年进个大厂!...
  7. 漫画:程序员每天的6场战斗
  8. Go面试题 | []int 能转换为 []interface 吗?
  9. SecondaryNameNode的Inconsistent checkpoint fields异常
  10. 手机格斗网游该如何避免延迟
  11. [置顶]【留言板 Message Board】
  12. 小程序源代码_如何找回微信小程序源代码
  13. Unity3D中Grid Layout Group组件一键实现自动排版Image
  14. C++ Redis mset 二进制数据接口封装方案
  15. 上云一时爽,遇坑泪两行
  16. 入侵防御系统_入侵防御系统简介
  17. 51NOD - 1677treecnt
  18. OpenStack 虚拟机冷/热迁移的实现原理与代码分析
  19. velocity模板大小写转换
  20. Tushare简单的数据使用以及mysql存储教程

热门文章

  1. 实现redis 手动_Redis精华所在,一口气说完Redis的主从复制和哨兵模式
  2. nGQL知识点总结-20210719
  3. sess.run的第一个参数的错误理解
  4. 1×pbs缓冲液配方_小鼠毒性休克综合征毒素1(TSST-1)ELISA试剂盒 -价格/说明书-赫澎研选_产品说明_仪器仪表技术文献...
  5. if test 多条件_VBA语法01:VBA当中的IF语句单一条件判断和多条件判断的使用
  6. 信息系统项目管理师优秀论文:沟通与干系人管理
  7. 解决跨域常见方案(is therefore not allowed access)
  8. 双数据源其中一个数据源的dao文件报BindingException
  9. java基础IO BIO、NIO、AIO的区别
  10. 新概念0820:我只有一种生活