git pull 和 git fecth 的区别

git pull 和 git fecth 的区别

平时在使用git的时候,更新代码习惯性的会去使用git pull命令。后来才注意到,git fetch的使用会是更加合理的,安全的。

(以下部分内容参考自网上资料)
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分支的差别
  • 最后进行合并

2. git pull

相当于是从远程获取最新版本并merge到本地

 git pull origin master

上述命令其实相当于git fetch 加上 git merge
直接从主干上下载下来代码,然后自动进行合并

总结:

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

补充:在idea中,当你需要切换分支开发时,可以使用git fetch更新代码及分支信息,就可以看到最新在远端创建的分支。

你可能感兴趣的:(GIT)