当前回答
其他回答
其中一个使用实例git fetch
是,以下将告诉您自您上次拉动以来远程分支的任何变化... 这样您就可以在实际拉动之前检查, 这样就可以改变您当前分支和工作副本中的文件 。
git fetch
git diff ...origin
见见git diff
双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双- 双..
三点和三点...
语法。
我花了一点点时间来理解有什么区别, 但这只是一个简单的解释。master
在您的本地主机是分支 。
当您克隆一个仓库时, 将整个仓库获取到本地主机主机。 这意味着当您克隆一个仓库时, 您将会有一个源/ 主指示器HEAD
指向同一方向HEAD
.
当您开始工作并投入工作时,您将主指针推进到HEAD
+ 你的承诺。但来源/总指针仍然指向你克隆时是什么。
因此,区别在于:
- 如果你做了
git fetch
它只会获取远程仓库中的所有更改( A) 。吉特胡布)并移动源/主指针到HEAD
同时,你的当地分行长会继续指出它的位置。 - 如果你做了
git pull
,它基本上可以(如先前解释的)提取(如前所解释的)并合并对主分支的任何新修改,然后将指针移到HEAD
.
之间唯一的差别git pull
和git fetch
是:
git pull
从远程分支拉出并合并。
git fetch
仅从远程分支获取取取, 但它不合并
i. e. git pull = git 获取 + git 合并...
我想用视觉来描述这些事情。也许其他开发商也想看,所以我还要补充一下。我不完全确定这一切是否都正确,所以如果你发现任何错误,请评论。
LOCAL SYSTEM
. =====================================================
================= . ================= =================== =============
REMOTE REPOSITORY . REMOTE REPOSITORY LOCAL REPOSITORY WORKING COPY
(ORIGIN) . (CACHED)
for example, . mirror of the
a github repo. . remote repo
Can also be .
multiple repo's .
.
.
FETCH *------------------>*
Your local cache of the remote is updated with the origin (or multiple
external sources, that is git's distributed nature)
.
PULL *-------------------------------------------------------->*
changes are merged directly into your local copy. when conflicts occur,
you are asked for decisions.
.
COMMIT . *<---------------*
When coming from, for example, subversion, you might think that a commit
will update the origin. In git, a commit is only done to your local repo.
.
PUSH *<---------------------------------------*
Synchronizes your changes back into the origin.
拥有远程镜像的一些主要优点是:
- 业绩 业绩业绩 业绩业绩(在不试图通过网络挤压所有承诺和信息的情况下标注所有承诺和信息)
- 反馈反馈反馈反馈反馈有关您所在的本地回收站的状况( 例如, 我使用阿特拉斯斯的源树树, 这将给我一个灯泡, 显示我是否承诺提前或落后于来源 。 这个信息可以用 GIT Fitch 来更新 ) 。
Git 获取
您从源头通过获取下载到本地分支的更改 。 获取请求远程回购, 询问其他人所做的全部承诺, 但您没有在本地回购上。 获取这些承诺的下载, 并将其添加到本地仓库 。
基特合并
您可以通过合并命令获取下载的更改。 合并后将获取从获取中提取的承诺, 并尝试将其添加到您的本地分支。 合并后将保留您本地变化的承付历史, 这样当您以推力共享分支时, Git 将知道其他人如何将您的变化合并 。
吉特拉拉
抓取并合并一起运行的频率足够大, 足以创建一个将两者合并、 拉动、 合并的命令。 拉动时会抓取并合并, 以添加下载的字符串 。 @ info: whatsthis
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式
- git pull -rebase和git pull -ff-only之间的区别