Git中從遠程的分支獲取最新的版本到本地有這樣2個命令:
-
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
從遠程獲取最新的版本到本地的tmp分支上 之后再進行比較合并。如果不想要tmp分支了,可以刪除此分支
$ git branch -d tmp
// 如果該分支沒有合并到主分支,可以使用如下強制刪除
$ git branch -D tmp
-
git pull:相當于是從遠程獲取最新版本并merge到本地
$ git pull origin master
上述命令其實相當于git fetch 和 git merge 在實際使用中,git fetch更安全一些 因為在merge前,我們可以查看更新情況,然后再決定是否合并