Git 代碼更新:git fetch 和 git pull 的區別

Git 從遠程的分支獲取最新的版本到本地有這樣 2 個命令: git

1. git fetch:至關因而從遠程獲取最新版本到本地,但不會自動 merge 

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

以上命令的含義:安全

首先從遠程的 origin 的 master 主分支下載最新的版本到 origin/master 分支上bash

而後比較本地的 master 分支和 origin/master 分支的差異fetch

最後進行合併code

上述過程其實能夠用如下更清晰的方式來進行:blog

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

從遠程獲取最新的版本到本地的 tmp 分支上,以後再進行 比較、合併it

2. git pull:至關因而從遠程獲取最新版本並 merge 到本地 

git pull origin master

上述命令其實至關於 git fetch + git mergeast

在實際使用中,git fetch 更安全一些,由於在 merge 前,咱們能夠查看更新狀況,而後再決定是否合併。class

 

爲了更好的理解,畫了個圖:下載

 

相關文章
相關標籤/搜索