[译]git fetch
git fetch从远程仓储导入commit到你的本地仓储. 这些fetch到的commit是做为一个远程分支存储在你本地的. 这样你可以在集成这些commit到你的项目前先看看都有些什么修改.
用法
git fetch <remote>
获取远程仓储所有的分支.
git fetch <remote> <branch>
获取远程仓储指定的分支
讨论
当你想看看其他人都做了些什么工作的时候你可以使用fetch. 因为fetch到的内容是做为一个remote分支的形式展现出来的, 所以不会对你的本地开发有什么影响. 因此fetch是在你想merge远程的commit前, 先来查看查看这些commit的一个安全的办法. 他不回强迫你merge.
远程分支
远程分支类似于本地分支, 不同点在于他们代表是其他人的仓储的分支. 你可以checkout一个远程分支, 当你checkout一个远程分支的时候, 你处于一个detached HEAD的状态(就如checkout 一个老的commit). 你可以把他想象成是一个只读的分支. 想要查看远程分支, 只要在git branch的后面加上一个-r标记. 远程分支的前缀是remote这样就不会和本地分支混淆了. 下面的例子演示怎么查看远程分支:
git branch -r
# origin/master
# origin/develop
# origin/some-feature
如果你觉得远程分支的一些修改没问题你可以使用git merge把他们merge到你的本地分支. 和svn不一样, git同步远程的仓储需要两步:fetch和merge. git pull命令是这一个git fetch加git merge的更简便的写法.
例子
下面的例子演示了同步你本地仓储和远程仓储的典型工作流.
git fetch origin
运行后会显示哪些branch被下载下来了:
a1e8fb5..45e66a4 master -> origin/master
a1e8fb5..9e8ab1c develop -> origin/develop
* [new branch] some-feature -> origin/some-feature
在下图中远程分支的commit是矩形的, 本地的是圆形的.

为了查看哪些commit被添加到了上游master, 你可以运行git log 另外加上origin/master做为过滤器
git log --oneline master..origin/master
批准远程分支的修改并merge到我们的本地master分支可以使用如下的命令:
git checkout master
git log origin/master
然后开始merge
git merge origin/master
[译]git fetch的更多相关文章
- git pull和git fetch的区别
Git中从远程的分支获取最新的版本到本地有这样2个命令:1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge Git fetch origin master git log ...
- Git fetch和git pull的区别
Git中从远程的分支获取最新的版本到本地有这样2个命令:1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge git fetch origin mastergit log - ...
- [转]git fetch 的简单用法:更新远程代码到本地仓库
[原文地址]:http://my.eoe.cn/com360/archive/3533.html Git中从远程的分支获取最新的版本到本地方式如下,如何更新下载到代码到本地,请参阅ice的博客基于Gi ...
- [译]git push
push就是把你本地仓储的commit传到远程仓储中去. 用法 git push <remote> <branch> push指定的分支到<remote>中去. ...
- [译]git pull
git pull把git fetch和git merge压缩成了一条命令. 用法 git pull <remote> 作用和git fetch <remote> &&a ...
- [转] git fetch与pull
原文: http://www.tech126.com/git-fetch-pull/ Git中从远程的分支获取最新的版本到本地有这样2个命令:1. git fetch:相当于是从远程获取最新版本到本地 ...
- git fetch 的简单用法:更新远程代码到本地仓库
方式一 1. 查看远程仓库 1 2 3 4 5 6 $ git remote -v eoecn https://github.com/eoecn/android-app.git (fetch) eoe ...
- git fetch和git pull(转载)
From:http://www.tech126.com/git-fetch-pull/ Git中从远程的分支获取最新的版本到本地有这样2个命令: 1. git fetch:相当于是从远程获取最新版本到 ...
- 真正理解 git fetch, git pull 以及 FETCH_HEAD【转】
转自:http://www.cnblogs.com/ToDoToTry/p/4095626.html 真正理解 git fetch, git pull 要讲清楚git fetch,git pull,必 ...
随机推荐
- CruiseControl.NET配置文件(生产环境版本,与SVN结合自动部署)
配置如下: 说明:此配置文件的功能是当有SVN修改时,会自动触发并编译发布,间隔为10秒. 由于配置文件上面有注释,如果提示节点配置错误,请删除这些注释. 官方详细节点配置说明:http://www. ...
- QNetworkAccessManager 实现的 ftp 上传
使用 QNetworkAccessManager 实现的 ftp 上传代码.完整可用,做个备忘. #include "mainwindow.h" #include <QDeb ...
- Solution: Win 10 和 Ubuntu 16.04 LTS双系统, Win 10 不能从grub启动
今年2月份在一台装了Windows的机器上装了Unbuntu 14.04 LTS (双系统, dual-boot, 现已升级到 16.04 LTS). 然而开机时要从grub启动 Windows (选 ...
- codevs3500 快速幂入门题解
codevs3500 快速幂入门题解 //我也是抄的题解 题目描述 Description 输入3个数a,b,c,求a^b mod c=? 输入描述 Input Description 三个数a,b, ...
- ejb 远程调用
1,客户端代码: package com.example.test; import java.util.Hashtable; import java.util.Properties; import j ...
- Linux添加新盘扩容空间
添加磁盘扩容操作:1.添加物理磁盘到服务器重启服务器,#fdisk -l查看识别磁盘(以/dev/sdb为例)[ ~]# fdisk -lDisk /dev/sda: 42.9 GB, 4294967 ...
- iOS - Availability.h
>for 'dispatch' application inner to begin note `#include <Availability.h>` These macros ar ...
- js013-事件
js013-事件 本章内容 理解事件流 使用时间处理程序 不同的事件类型 JS与HTML之间的交互是通过实践实现的.时间就还文档或浏览器窗口发生的一些特定的交互 瞬间.可以使用侦听器来预定事件,以便时 ...
- css014 响应式web设计
css014 响应式web设计 一. 响应式web设计基础知识 1.rwd的三大理念:a.用于布局的弹性网络, b.用于图片和视频的弹性媒体,c.为不同屏幕宽度创建的不同样式的css媒体查询. ...
- Unity Editor开发
SerializedObject SerializedObject.Update()更新所有序列化对象的值:SerializedObject.ApplyModifiedProperties()应用序列 ...