А дальше необходимо синхронизировать состояние удалённого репозитория с локальным!
Для этого используем команду git fetch
Из документации Git:
git-fetch - загрузка объектов и ссылок из другого репозитория
🌿 При выполнении git fetch с удалённого репозитория в ваш локальный реп выкачиваются все имеющиеся в удалённом репозитории коммиты, которых у вас пока нет, а также все ветки.
🌿 Локально создаются специальные ветки, которые повторяют содержание удалённых веток. Эти ветки имеют формат имени <имя удалённого репозитория>/<имя ветки>, например origin/master.
Как понять: произошло ли что-то хорошее и что делать дальше?
Ведь новые ветки по-прежнему не отображаются
Ответ: если Git никак не возмутился и не написал сообщение типа "что-то пошло не так", а вы просто перешли в другую строку - значит всё случилось! 🌟 стыковка прошла успешно 🚀
Дело в том, что в локальном репозитории немного по-другому всё это отображается.
Если просмотреть ветки, как обычно, с помощью команды git branch или её синонима git branch --list, отобразятся только те, которые были созданы в данном, т.е. локальном репозитории. А нам нужно посмотреть все, для этого используем команду git branch -a.
Будет отображено как на скрине
🌿 При этом можно уже переключиться на новую ветку обычной командой git checkout название_ветки 👏
В данном случае подход отличается.
🌿 Для создания ветви в локальном репозитории мы используем команду git branch <название_ветки> либо git branch -b с одновременным переходом в неё
🌿 Если ещё не перешли, то переключаемся на неё командой git checkout <название_ветки>
🌿 Ветка есть, можем в ней создавать новую фичу или что вы там задумали. НО и ветка, и всё, что вы в ней делаете, находится только у вас в компьютере.
Если вы решили поделиться своей работой с коллегами и выложить работу в ветке на удалённый сервер, сделать это можно с помощью следующей комбинации git push --set-upstream origin название_ветки
Эта команда синхронизирует все изменения этой ветки с удалённым сервером и добавит ветку на сервер.
❗Даже если вы смержите другую ветку с текущей и запушите на сервер, то та, другая ветка просто заберёт изменения из неё, но при этом текущая ветка так и останется в локальном репозитории.
Для добавления самой ветки на удалённый репозиторий всё равно её надо отправить "вверх по течению" командой git push --set-upstream origin название_ветки