Ответ 1
Как упоминалось в "Предупреждение: push.default не задано, его неявное значение изменяется в Git 2.0":
соответствие означает, что Git push нажимает все ваши локальные ветки на те, которые имеют одинаковое имя на пульте дистанционного управления. Это облегчает случайное нажатие ветки, которую вы не планировали.
И это не лучшая практика: вы не должны толкать все свои ветки.
Большинство из них могут быть частными ветвями для тестирования или только для внутреннего разработчика.
простой (Git 2.0 по умолчанию) означает, что
git push
будет нажимать только текущую ветвь на ту, с которой тянет Git pull, а также проверяет что их имена совпадают.
По умолчанию он подталкивает ветку, на которой вы работаете, только если указанная ветка существует на удаленной стороне с тем же именем (или если вы ее явно создаете).
Подробнее об этом изменении политики вы можете найти в разделе "[ git push - поведение по умолчанию?]. 2".
Я описываю другие политики в git - push current
и push upstream
(отслеживание).
Новая политика по умолчанию теперь объединена с main (commit 289ca27) и заявляет, что это новое значение по умолчанию в commit 11037ee:
Мы пообещали изменить поведение ленивого "git push [там]", который не говорит, что нажимать на командную строку от "соответствия" до "простого" в Git 2.0.
Это, наконец, переворачивает этот бит.