Приоритет отдаем работе по SSH вместо https. Для этого нужно:
1. Сгенерировать приватный и публичный ключи
(Гайд по генерации пары RSA ключей - раздел “Generating an SSH key”)
2. Зайти на сайт гитлаба проекта
3. Добавить сюда публичный ключ в виде «ssh_rsa <@Перенос_строки@><@Публичный_ключ@>»
4. Даем ключу название
5. Поле с датой оставляем пустым
6. Нажимаем добавить.
7. Теперь переходим в Source Tree
8. Открываем терминал
9. Там пишем команду: «nano ~/.ssh/id_rsa»
10. В открывшееся окошка вставляем приватный ключ
11. Сохраняем (ctrl-X => Enter).
12. Переходим в настройки
13. Во вкладке “Общее” в группе “Настройка SSH клиента” выбрать “Клиент SSH”→"OpenSSH"
14. В строке ключ ssh выбираем файл с секретным ключем
15. Применяем
16. Заходим в гитлаб проекта
17. Копируем ssh путь до проекта
18. Заходим в локальные настройки проекта
19. Выбираем строку с имененем origin и жмем редактировать
20. В “URL / путь” вставляем путь ssh до проекта.
21. Сохраняем изменения
22. Работаем дальше с удовольствием.
Сливаемся с внешними ветками ТОЛЬКО (!!!) через merge.
Внешние ветки.
На каждом проекте обязательно должны существовать 2 внешних ветки:
Остальные ветки, если охота выкинуть наружу, то нужно:
Ход работы в проекте.
Ведем работу (ветвимся) только от Master-ветка. Ветка Develop нужна ТОЛЬКО для того, чтобы в нее СЛИВАТЬ свои локальные ветки и убеждаться, что ваши изменения не портят изменения другого программиста.
Ниже будет приведен алгоритм работы с ветками в проекте:
Если нужно мелкое быстрое исправление – hotfix:
Время от времени ответственный за Master- ветку должен сливать ее в Develop-ветку.
Если на любом из шагов возникают конфликты при слиянии, то для решения этих конфликтов пользуемся иерархией:
Если конфликтуют коммиты из двух разных групп, указанных выше, то применяем изменения той группы что находится выше по списку (если только не стояла задача сделать изменение этого участка кода).
Продуктивной работы 😊