git pull和git merge 都是將其他分支的代碼合併到當(dāng)前分支,那到底在不同場(chǎng)景下具體啥區(qū)別呢??
ringa_lee
用過(guò)了就知道了,次git pull = git fetch + git merge
fetch和push指令可以分別對(duì)遠(yuǎn)端分支進(jìn)行fetch和push操作,而pull不是直接跟遠(yuǎn)端分支對(duì)話的。
fetch同pull的區(qū)別在於:git fetch:是從遠(yuǎn)端取得最新版本到本地,不會(huì)自動(dòng)merge
而git pull是從遠(yuǎn)端取得最新版本並merge到本地倉(cāng)庫(kù)
從安全角度出發(fā),git fetch比git pull更安全,因?yàn)槲覀兛梢韵缺容^本地與遠(yuǎn)端的差異後,選擇性的合併。
git push 預(yù)設(shè)推送到master,如果有多個(gè)分支,則多個(gè)分支一起推送到遠(yuǎn)端