盡管我盡了最大的努力去理解git,但我顯然還是很害怕使用git。從kernel.org獲得git push:-u--set-upstream對于每個最新的或成功推送的分支,添加上游(跟蹤)引用,該引用由無參數(shù)的git-pull(1)和其他命令使用。有關(guān)更多信息,請參見branch.<name>.mergegit-config(1)。下面是branch.<name>.merge來自git config:branch.<name>.merge與一起定義branch.<name>.remote給定分支的上游分支。它告訴git fetch / git pull合并哪個分支,并且還可能影響git push(請參閱push.default)。在branch中時<name>,它告訴git fetch將默認的refspec標記為要合并到FETCH_HEAD中。該值的處理方式類似于refspec的遠程部分,并且必須匹配從所給定的從遠程獲取的ref "branch.<name>.remote"。git pull(首先調(diào)用git fetch)使用合并信息來查找默認分支進行合并。如果沒有此選項,則git pull默認會合并獲取的第一個refspec。指定多個值以獲取章魚合并。如果您希望設(shè)置git pull以便它可以<name>從本地存儲庫中的另一個分支合并到一起,則可以指向branch.<name>.merge到所需的分支,然后使用特殊設(shè)置。(一個時期)branch.<name>.remote。我使用github成功設(shè)置了一個遠程存儲庫,并使用以下命令成功推送了對它的第一次提交:git push -u origin master然后,我無意間成功地使用以下命令將第二次提交推送到遠程存儲庫:git commit -m '[...]'但是,我錯誤地認為我將不得不再次推至originfrom master,我跑了:# note: no -ugit push origin master那是做什么的?它似乎根本沒有任何作用。我“撤消”了git push -u origin master嗎?
3 回答

慕的地10843
TA貢獻1785條經(jīng)驗 獲得超8個贊
git push -u origin master
是相同的:
git push origin master ; git branch --set-upstream master origin/master
如果忘記了,請做最后一個聲明-u!
或者,您可以強制執(zhí)行以下操作:
git config branch.master.remote origin
git config branch.master.merge refs/heads/master
如果您讓命令為您執(zhí)行,它將選擇您的錯誤,例如您鍵入了不存在的分支還是沒有鍵入git remote add,盡管這可能就是您想要的:)。

POPMUISE
TA貢獻1765條經(jīng)驗 獲得超5個贊
簡單來說:
從技術(shù)上講,該-u標志將跟蹤參考添加到要推送到的上游服務(wù)器。
在這里重要的是,這使您git pull無需提供更多參數(shù)即可執(zhí)行操作。例如,一旦執(zhí)行a git push -u origin master,便可以稍后調(diào)用,git pull而git將知道您的實際意思git pull origin master。
否則,您將必須輸入整個命令。
- 3 回答
- 0 關(guān)注
- 1828 瀏覽
添加回答
舉報
0/150
提交
取消