git之fetch和 pull的区别

Posted 古越剑箫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git之fetch和 pull的区别相关的知识,希望对你有一定的参考价值。

Git中从远程的分支获取最新的版本到本地有这样2个命令:
1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge

Git fetch origin master
git log -p master..origin/master
git merge origin/master

    以上命令的含义:
   首先从远程的origin的master主分支下载最新的版本到origin/master分支上
   然后比较本地的master分支和origin/master分支的差别
   最后进行合并
   上述过程其实可以用以下更清晰的方式来进行:

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

从远程获取最新的版本到本地的test分支上
   之后再进行比较合并
2. git pull:相当于是从远程获取最新版本并merge到本地

git pull origin master

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

 










以上是关于git之fetch和 pull的区别的主要内容,如果未能解决你的问题,请参考以下文章

Git 代码更新:git fetch 和 git pull 的区别

git 要commit之前先pull, 这样做法合理吗?

Git fetch和git pull的区别

Git中checkout、fetch和pull的区别

git pull 和 git fetch的区别?

Git fetch和git pull的区别