git fetch与git 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:cloud 
git diff cloud 
git merge cloud 
从远程获取最新的版本到本地的cloud分支,然后跟本地的主分支比较在合并。

2,git pull。 
相当于从远程获取最新版本兵合并到本地。
git pull 的运行过程:首先,基于本地的FETCH_HEAD记录,比对本地的FETCH_HEAD记录与远程仓库的版本号,然后git fetch 获得当前指向的远程分支的后续版本的数据,然后再利用git merge将其与本地的当前分支合并。

git pull origin master

就相当于git fetch 和git merge。

在实际使用中,git fetch更安全一些。因为在merge钱,我们可以查看更新情况,然后在决定是否合并。

如果你git pull遇到“no teacking infomation”,则说明本地分支与远程分支的链接关系没有创建, 
$git branch -set-upstream branch-name origin/branch-name.

来源:
https://blog.csdn.net/huang211630/article/details/73612068
https://blog.csdn.net/u010688587/article/details/52246859

声明:本站所有文章和图片,如无特殊说明,均为原创发布。商业转载请联系作者获得授权,非商业转载请注明出处。
真诚赞赏,手留余香
赞赏
随机推荐
Linux netstat 命令
WP_Query 函数
Node.js 的 URL 的模块
WordPress 插件开发
WordPress 函数 add_option()、get_option() 和 update_option()
WordPress 输入安全
FFmpeg 修改默认音轨
uni-app 实现暗黑模式/夜间模式/深色模式/暗黑主题(DarkMode)的几种方法