У меня есть две разные версии Git. В версии 1.6.2, git push
не имеет -u
опции. Появляется только в версии 1.7.x.
Из документов, -u
это связано с переменной
branch.<name>.merge
в git config
. Эта переменная описана ниже:
Defines, together with branch.<name>.remote, the upstream branch
for the given branch. It tells git fetch/git pull which branch to merge.
Что такое восходящая ветка?
Ответы:
«Upstream» означает основной репо, из которого будут вытягивать другие люди, например, ваш репозиторий GitHub. Опция -u автоматически устанавливает этот апстрим для вас, связывая ваш репо с центральным. Таким образом, в будущем Git «знает», куда вы хотите нажать и куда вы хотите получить, так что вы можете использовать
git pull
илиgit push
без аргументов. Немного вниз, эта статья объясняет и демонстрирует эту концепцию.источник
git push
, не зависит от конфигурации ветки восходящего направления, если вы неpush.default
установили наtracking
(илиupstream
в более поздних версиях мерзавца).Это больше не актуально!
источник
-u
сейчас? GitHub по-прежнему рекомендует использовать этот флаг при создании нового репо ...