Git中從遠程的分支獲取最新的版本到本地有這樣2個命令:fetch和pullgit
相同點:安全
首先在做用上他們的功能是大體相同的,都是起到了更新代碼的做用。服務器
1.fetch:至關因而從遠程獲取最新版本到本地,不會自動mergefetch
git fetch orgin master //將遠程倉庫的master分支下載到本地當前branch中 git log -p master ..origin/master //比較本地的master分支和origin/master分支的差異 git merge origin/master //進行合併
這個命令會訪問遠程倉庫,從中拉取全部你尚未的數據。 執行完成後,你將會擁有那個遠程倉庫中全部分支的引用,能夠隨時合併或查看。spa
若是你使用git clone 命令克隆了一個倉庫,命令會自動將其添加爲遠程倉庫(git remote -v)並默認以 「origin」 爲簡寫。 因此,git fetch origin 會抓取克隆(或上一次抓取)後新推送的全部工做。 必須注意 git fetch 命令會將數據拉取到你的本地倉庫 - 它並不會自動合併或修改你當前的工做。 當準備好時你必須手動將其合併入你的工做。code
若是你有一個分支設置爲跟蹤一個遠程分支,可使用 git pull命令來自動的抓取而後合併遠程分支到當前分支。 這對你來講多是一個更簡單或更舒服的工做流程;默認狀況下,git clone 命令會自動設置本地 master 分支跟蹤克隆的遠程倉庫的 master 分支(或無論是什麼名字的默認分支)。 運行 git pull 一般會從最初克隆的服務器上抓取數據並自動嘗試合併到當前所在的分支。blog
2.git pull:至關因而從遠程獲取最新版本並merge到本地rem
git pull origin master //至關於git fetch 和 git merge
注:用git pull更新代碼的話就比較簡單暴力了可是根據commit ID來看的話,他們實際的實現原理是不同的,因此不要用git pull,用git fetch和git merge更加安全。工作流