使用git上传时,一般直接使用git pull来拉数据, 但老大建议使用git fetch & git rebase,所以需要了解一下它们的不同
git pull
: 作用是将远程分支拉回本地,做了拉取和合并两件事,其中 git pull只拉取合并本地当前所在分支
git fetch
:拉取当前项目的所有分支的的提交
,但不合并。在实际使用中,git fetch更安全一些因为在merge前,我们可以查看更新情况,然后再决定是否合并git rebase
:与git merge功能相似,不同的是它将节点接到主分支的末端,最后呈现出来就是一条长长的主分支,干净明了。
但要注意, rebase 是会隐藏你真实的修改记录的,所以最后呈现出来的 git 历史并不能表现你的真实操作
git merge效果:
git rebase效果: