天天看點

git fetch與pull差別

fetch和pull的差別

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:tmp
git diff tmp
git merge tmp      

2. git pull:相當于是從遠端擷取最新版本并 merge 到本地

git pull origin master