我有兩個不一樣版本的git。 在1.6.2版本中, git push
沒有-u
選項。 它只出如今1.7.x版本中。 git
從文檔中, -u
與變量相關 fetch
branch.<name>.merge
在git config
。 該變量以下所述: this
Defines, together with branch.<name>.remote, the upstream branch for the given branch. It tells git fetch/git pull which branch to merge.
什麼是上游分支? spa
這已再也不是最新的! code
Push.default is unset; its implicit value has changed in Git 2.0 from 'matching' to 'simple'. To squelch this message and maintain the traditional behavior, use: git config --global push.default matching To squelch this message and adopt the new behavior now, use: git config --global push.default simple When push.default is set to 'matching', git will push local branches to the remote branches that already exist with the same name. Since Git 2.0, Git defaults to the more conservative 'simple' behavior, which only pushes the current branch to the corresponding remote branch that 'git pull' uses to update the current branch.
「上游」指的是其餘人將從中獲取的主要回購,例如您的GitHub回購。 -u選項會自動爲您設置上游,將您的倉庫連接到中央倉庫。 這樣,在將來,Git「知道」你想要推送到哪裏以及你想從哪裏取出,因此你能夠使用git pull
或git push
而不須要參數。 有點下來, 這篇文章解釋並演示了這個概念。 ci