Git中從遠(yuǎn)程的分支獲取最新的版本到本地有這樣2個(gè)命令:
-
git fetch
:相當(dāng)于是從遠(yuǎn)程獲取最新版本到本地除呵,不會(huì)自動(dòng)merge
$ git fetch origin master
$ git log -p master..origin/master
$ git merge origin/master
以上命令的含義:
首先從遠(yuǎn)程的origin的master主分支下載最新的版本到origin/master分支上
然后比較本地的master分支和origin/master分支的差別
最后進(jìn)行合并.
上述過(guò)程其實(shí)可以用以下更清晰的方式來(lái)進(jìn)行:
$ git fetch origin master:tmp
$ git diff tmp
$ git merge tmp
從遠(yuǎn)程獲取最新的版本到本地的tmp分支上 之后再進(jìn)行比較合并廊宪。如果不想要tmp分支了煎娇,可以刪除此分支
$ git branch -d tmp
// 如果該分支沒(méi)有合并到主分支,可以使用如下強(qiáng)制刪除
$ git branch -D tmp
-
git pull
:相當(dāng)于是從遠(yuǎn)程獲取最新版本并merge到本地
$ git pull origin master
上述命令其實(shí)相當(dāng)于git fetch 和 git merge 在實(shí)際使用中丹鸿,git fetch更安全一些 因?yàn)樵趍erge前越走,我們可以查看更新情況,然后再?zèng)Q定是否合并