git fetch 命令
git fetch命令用于从另一个存储库下载对象和引用。
使用语法
git fetch [<options>] [<repository> [<refspec>…]]
git fetch [<options>] <group>
git fetch --multiple [<options>] [(<repository> | <group>)…]
git fetch --all [<options>]
描述
从一个或多个其他存储库中获取分支和/或标签(统称为“引用”)以及完成其历史所必需的对象。 远程跟踪分支已更新(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
上述命令从远程refs/heads/命名空间复制所有分支,并将它们存储到本地的refs/remotes/ origin/命名空间中,除非使用分支.<name>.fetch选项来指定非默认的refspec。
2.明确使用refspec
$ git fetch origin +pu:pu maint:tmp
此更新(或根据需要创建)通过从远程存储库的分支(分别)pu和maint提取来分支本地存储库中的pu和tmp。
即使没有快进,pu分支将被更新,因为它的前缀是加号; tmp不会。
3.在远程分支上窥视,无需在本地存储库中配置远程
$ git fetch git://git.kernel.org/pub/scm/git/git.git maint
$ git log FETCH_HEAD
第一个命令从 git://git.kernel.org/pub/scm/git/git.git 从存储库中获取maint分支,第二个命令使用FETCH_HEAD来检查具有git-log的分支。
4.将某个远程主机的更新
$ git fetch <远程主机名>
要更新所有分支,命令可以简写为:
$ git fetch
上面命令将某个远程主机的更新,全部取回本地。默认情况下,git fetch取回所有分支的更新。如果只想取回特定分支的更新,可以指定分支名,如下所示 -
$ git fetch <远程主机名> <分支名>
比如,取回origin主机的master分支。
$ git fetch origin master
所取回的更新,在本地主机上要用”远程主机名/分支名”的形式读取。比如origin主机的master分支,就可以用origin/master读取。
git branch命令的-r选项,可以用来查看远程分支,-a选项查看所有分支。
$ git branch -r
origin/master
$ git branch -a
* master
remotes/origin/master
上面命令表示,本地主机的当前分支是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
上面命令表示在当前分支上,合并origin/master。
git fetch 命令的更多相关文章
- git pull和git fetch命令
git pull和git fetch命令 git pull git pull命令的作用是取回远程主机某个分支的更新,在与本地指定分支合并,格式如下: $ git pull <远程主机名>& ...
- git clone,push,pull,fetch命令详解
源自 Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌 ...
- (git fetch git push git pull)远程本地分支互相推送更新
git push origin bug_huiyuan:mobile_attribution 把bug_huiyuan(本地分支) 推送到 远程mobile_attribution分支 git pus ...
- 分布式版本控制系统Git-----4.Git 常用命令整理
1. git init 初始化 git 目录 2. git add 添加文件 git add fileName #添加指定文件 git add -i #手工选择要添 ...
- 分布式版本管理工具 git常用命令
Git global setup git config --global user.name "joey" git config --global user.email " ...
- Git常用命令解说
http://blog.csdn.net/hangyuanbiyesheng/article/details/6731629 1. Git概念 1.1. Git库中由三部分组成 Gi ...
- git<git常用命令>
1,初始化仓库: git init --此命令会在当前目录下新建一个Git仓库.新建了一个 .git的隐藏目录,仓库的所有数据都放在这个目录里.目前还是空的. 2,跟踪,暂存文件: git add - ...
- Git fetch & pull
转:https://blog.csdn.net/qq_36113598/article/details/78906882 1.简单概括 先用一张图来理一下git fetch和git pull的概念: ...
- 转一个git的命令
Git远程操作详解 Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Git远程操作. git clone git rem ...
随机推荐
- 对synchronized的一点理解
一.synchronized的使用(一).synchronized同步方法1. “非线程安全”问题存在于“实例变量”中,如果是方法内部的私有变量,则不存在“非线程安全”问题.2. 如果多个线程共同访问 ...
- 【大数据】Spark基础解析
第1章 Spark概述 1.1 什么是Spark 1.2 Spark内置模块 Spark Core:实现了Spark的基本功能,包含任务调度.内存管理.错误恢复.与存储系统交互等模块.Spark Co ...
- Rabbit and Grass HDU - 1849 (Bash+Nim)
就是Bash 和 Nim 博弈的结合 可以直接 res ^= (Li + 1) % Mi 也可以 sg打个表 我打了个表 #include <iostream> #include &l ...
- 虚拟主机、ECS云服务器、VPS区别汇总
想做一个网站,但是在各种类型的服务器琳琅满目,现在总结一下市场上常见的几种服务器. 1.虚拟主机 虚拟主机就是利用虚拟化的技术,将一台服务器划分出一定大小的空间,每个空间都给予单独的 FTP 权限和 ...
- Web前端开发神器--WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版
WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版 http://www.jb51.net/softs/171905.html WebStorm 是jetbrains公司旗 ...
- 学习Spring Boot:(九)统一异常处理
前言 开发的时候,每个controller的接口都需要进行捕捉异常的处理,以前有的是用切面做的,但是SpringMVC中就自带了@ControllerAdvice ,用来定义统一异常处理类,在 Spr ...
- 【BZOJ2962】序列操作(线段树)
[BZOJ2962]序列操作(线段树) 题面 BZOJ 题解 设\(s[i]\)表示区间内选择\(i\)个数的乘积的和 考虑如何向上合并? \(s[k]=\sum_{i=0}^klson.s[i]*r ...
- 【BZOJ2957】楼房重建(线段树)
[BZOJ2957]楼房重建(线段树) 题面 BZOJ 题解 对于整个区间维护最大斜率以及只考虑这个区间的答案 考虑如何向上合并. 首先左半段的答案是一定存在的 所以,现在的问题就是右半段能够贡献的答 ...
- BZOJ2800 [Poi2012]Leveling Ground 【扩展欧几里得 + 三分 + 堆】
题目链接 BZOJ2800 题解 区间加极难操作,差分之后可转化为两点一加一减 那么现在问题就将每个点暂时独立开来 先判定每个点是否被\((A,B)\)整除,否则无解 之后我们先将\(A,B\)化为互 ...
- 【hdu3555】 Bomb
http://acm.hdu.edu.cn/showproblem.php?pid=3555 (题目链接) 题意 求区间${[1,n]}$含有49的数的个数. Solution 数位dp,先求出不含4 ...