6.push.to.remote.md
Отправляем изменения в Remote
Если мы первоначально создавали remote репозиторий и потом клонировали его, то можем сразу делать Push.
Если же первоначально мы делали локальный репозиторий и хотим отправить изменения в remote, то нам надо сначала создать этот remote, а потом подцепить в проект.
Один проект может иметь несколько Remote, что очень удобно при мультихостинге (когда один проект имеет зеркала на github/gitlab/bitbucket/etc)
Добавляем ссылку на remote
Git-консоль
Через консоль ссылка на remote добавляется строкой вида:
git remote add -remote_name- -URL-
- -remote_name- : название remote репозитория, обычно origin
- -URL- : адрес репозитория
Пример:
git remote add origin https://hosting.url/username/reponame.git
GUI-клиент
В GUI-клиенте это делается не в одну команду и может отличаться от клиента к клиенту.
В SourceTree это делается так:
Нажимаем Settings в нужном репозитории.
В новом окне нажимаем кнопку Add
Теперь нам надо указать название удаленного репозитория и URL к нему.
Указываем ‘remote name’ и ‘URL/Path’ .
Поля в оранжевой рамке заполняются при необходимости.
Теперь нажимаем Ок.
В итога должно получиться вот так. Нажимаем Ок.
Делаем Push
Git-консоль
Для отправки push через консоль требуется выполнить команду:
git remote add -remote_name-
Пример:
git push origin
Если репозиторий имеет несколько remote , то для отправки изменений во все remote, то выполняется вот такая хитрая команда
git remote | xargs -L1 -I R git push R -branch_name-
GUI-клиент
В GUI-клиенте может отличаться от клиента к клиенту.
Нажимаем кнопку Push
В диалоге отмечаем галками нужные нам ветки (в примере только одна) и нажимаем Push.
Если у нас включен полный вывод информации, то будет еще одно окно с результатом.
Теперь в истории у нас появился новый элемент - удаленная (remote) ветка.
Имя для remote ветки всегда подчиняется правилу: имя_remote/имя_ветки.
Если проект имеет несколько Remote, то для отправки изменений в несколько Remote требуется последовательно нажимать Push и выбирать нужный remote.
Отдельно стоит отметить, что в SourceTree есть кнопка Terminal, которая позволяет выполнять команды git в режиме консоли.