Git 的 origin 和 upstream,如何用?
origin 和 upstream
這應(yīng)該在GitHub forks的上下文中理解(在本地克隆GitHub之前,在GitHub上fork出GitHub repo)
upstream 通常是指你已經(jīng)forked的原始倉(cāng)庫(kù)(有關(guān)upstream術(shù)語(yǔ)的更多信息,請(qǐng)參見“upstream”和“downstream”的定義)
origin 是你自己在GitHub上的倉(cāng)庫(kù),GitHub原始倉(cāng)庫(kù)的clone
從GitHub頁(yè)面中的解釋:
克隆repo時(shí),它有一個(gè)名為origin的默認(rèn)remote對(duì)象,它指向GitHub上的fork,而不是fork后的原始repo
要跟蹤原始repo,需要添加另一個(gè)名為upstream的remote倉(cāng)庫(kù)
如下操作:
git remote add upstream git://github.com/<aUser>/<aRepo.git>
(使用aUser/aRepo作為您fork的原始創(chuàng)建者和倉(cāng)庫(kù)的引用)
您將使用upstream從原始repo獲?。ㄒ员闶鼓谋镜馗北九c您要參與的項(xiàng)目原始倉(cāng)庫(kù)地址(你從forked的那個(gè)原始倉(cāng)庫(kù))保持同步):
git fetch upstream
(默認(rèn)情況下,git fetch單獨(dú)從origin獲取數(shù)據(jù))
您將使用origin來(lái)pull和push,因?yàn)槟梢载暙I(xiàn)給自己的代碼庫(kù)。
git pull
git push
(同樣,如果沒有參數(shù),默認(rèn)情況下使用“origin”)
通過(guò)執(zhí)行pull request,為upstream也就是原始倉(cāng)庫(kù)提交代碼。

更多內(nèi)容,點(diǎn)擊閱讀原文查看
