Толкаем местную ветку до GitHub
Я настроил Git, чтобы при запуске git push
, это подталкивает изменения к моему репозиторию GitHub. До сих пор у меня была только основная ветка.
Тем не менее, я теперь создал локальную ветку и зафиксировал ее, используя:
git checkout -b my_new_branch
git commit
То, что я хотел бы сделать сейчас, это перенести мои изменения в этой ветке на GitHub. Я просто делаю толчок?
Когда я впервые настроил его, я запустил:
git config push.default current
3 ответа
Я верю, что вы ищете git push origin my_new_branch
при условии, что ваш исходный пульт настроен для работы с вашим хранилищем github.
В зависимости от ваших локальных настроек git, если вы отметили ветку, которая не является той, которую вы клонировали, или веткой, в которой вы пытаетесь нажать, git не будет выдвигать вашу локальную ветку.
Вот сообщение, которое оно предоставляет:
предупреждение: push.default не установлено; в Git 2.0 его неявное значение изменилось с "совпадающего" до "простого". Чтобы подавить это сообщение и сохранить традиционное поведение, используйте:
Конфигурация git --global push.default соответствия
Чтобы подавить это сообщение и принять новое поведение сейчас, используйте:
git config --global push.default просто
Когда для push.default установлено значение "match", git будет отправлять локальные ветви в удаленные ветви, которые уже существуют с тем же именем.
Начиная с Git 2.0, Git по умолчанию использует более консервативное "простое" поведение, которое только толкает текущую ветвь к соответствующей удаленной ветке, которую "git pull" использует для обновления текущей ветки.
Смотрите 'git help config' и ищите 'push.default' для получения дополнительной информации. ("простой" режим был введен в Git 1.7.11. Используйте аналогичный режим "текущий" вместо "простого", если вы иногда используете более старые версии Git)
роковая: текущая ветка
MyLocalBranch
не имеет ветки вверх по течению. Чтобы протолкнуть текущую ветку и установить пульт в качестве восходящего, используйтеgit push --set-upstream origin MyLocalBranch
Если вы действительно ленивы, вы можете нажать на все локальные ветви, просто используя
git push --all
--все
Нажмите все ветви (т.е. ссылки под
refs/heads/
); нельзя использовать с другими<refspec>
,
Если вы сконфигурировали свой git для отправки в ваше мастер-репозиторий GitHub, независимо от того, в какой ветке вы находитесь, он будет перенаправлен в ваш главный репозиторий GitHub.
Имейте в виду, что если много разработчиков работают в одном репозитории, вы можете получить конфликт.