Обновление от февраля 2016 г.:
git 2.8 (март 2016 г.) удалено это большое предупреждающее сообщение.
См. commit 2f27520 (25 февраля 2016 г.) от Матье Мой (moy
).
(объединено Junio C Hamano -- gitster
-- в commit 15be621, 26 февраля 2016)
push
: удалить предупреждающее сообщение "push.default is unset
"
Предупреждение было важным до перехода на 2.0 и оставалось важным некоторое время после него, чтобы новые пользователи явно получали push.default
в своей конфигурации и не сталкивались с непоследовательным поведением, если они когда-либо использовали более старую версию Git.
Предупреждение существует с версии 1.8.0 (октябрь 2012 г.), поэтому мы можем ожидать, что подавляющее большинство нынешних пользователей Git столкнулись с ним, и большинство из них уже явно установили push.default
. Переход от «совпадения» к «простому» был запланирован для версии 2.0 (май 2014 г.), но фактически произошел только для версии 2.3 (февраль 2015 г.).
Сегодня предупреждение в основном видят новички, которые еще не настроили свою push.default
конфигурацию. Многих из них это предупреждение сбивает с толку, потому что оно говорит о концепциях, которые они еще не усвоили, и предлагает им сделать выбор, который они еще не могут сделать. См., например, "Предупреждение: push.default не установлен; его неявное значение изменяется в Git 2.0" (1260 голосов за вопрос, 1824 для ответа на момент написания)
Полностью удалите предупреждение, чтобы не мешать новичкам. Люди, которые все еще время от времени используют более старую версию Git, получат предупреждение через эту старую версию.
В конце концов, версий Git без предупреждения будет развернуто достаточно, и руководствам больше не нужно будет советовать устанавливать push.default
.
Оригинальный ответ (март 2014 г.)
Это предупреждение скоро изменится в git 2.0 (второй квартал 2014 г.) с commit 289ca27 и коммит 11037ee:
push.default не установлен; его неявное значение изменилось в Git 2.0 с 'matching' на 'simple'.
Чтобы убрать это сообщение и сохранить традиционное поведение, используйте:
git config --global push.default matching
Чтобы подавить это сообщение и принять новое поведение сейчас, используйте:
git config --global push.default simple
Когда push.default
установлено в 'matching
', git будет передавать локальные ветки в удаленные ветки, которые уже существуют с тем же именем.
Начиная с Git 2.0, Git по умолчанию использует более консервативное поведение 'simple
', которое только отправляет текущую ветку в соответствующую удаленную ветку, которую 'git pull
' использует для обновления текущей ветки.
Дополнительную информацию см. в разделе «Почему в Git принудительно выполняется сопоставление со значением по умолчанию?».
person
VonC
schedule
12.03.2014
> git push upstream mybranch
? - person dekdev   schedule 01.11.2013