GitHub Flow - это методология разработки ПО, которая сочетает в себе лучшие практики из Git и GitHub. Она предлагает простой и понятный процесс для разработки ПО, который позволяет команде быстро и эффективно создавать новые функции, исправлять ошибки и выпускать новые версии.
Пример гита при работе по github flow
- Эффективная командная работа. GitHub Flow работает лучше всего для команд разработчиков, которые работают над одним проектом. Все операции выполняются на базе главной ветки, что облегчает интеграцию изменений, уменьшает фрагментацию ветвления и улучшает командную работу.
- Простота использования. GitHub Flow очень прост в использовании, что позволяет команде быстро начать работу над проектом. Множество инструментов и функций GitHub помогают быстро создавать новые функции, исправлять ошибки и выпускать новые версии.
- Надежность. GitHub Flow был разработан компанией GitHub и опробован на практике в течение многих лет. Это обеспечивает надежность и устойчивость работы методологии, а также поддержку и принятие сообществом разработчиков.
- Непрерывная интеграция и развертывание. GitHub Flow легко интегрируется с инструментами непрерывной интеграции и развертывания, такими как Travis CI и Heroku. Это позволяет командам быстро и безопасно выпускать новые версии приложений.
- Открытость. GitHub Flow использует открытый и прозрачный процесс разработки, что позволяет командам легко отслеживать изменения, проводить код-ревью и делать предложения по улучшению проекта.
- Один коммит - одна фича
- Заголовок коммита должен отображать изменения в коде
- Заголовок коммита должен быть лаконичным
- Для более подробного описания можно использовать блок описания коммита
- Одна ветка - одна задача
- Не меняем главную ветку напрямую, все изменения через пулл реквесты
- Имя ветки отражает суть задачи или ее номер в системе
- Прежде чем пушить изменения надо обновить main и влить в свою ветку
git checkout -b yourBranchName
- Пишем код, который решает задачу
- Коммитим все свои изменения
git checkout main
git pull
- Возвращаемся в свою ветку
git checkout yourBranchName
git merge main
- Решаем конфликты, если они есть
- Пушим в репозиторий
git push --set-upstream origin yourBranchName
- Создаем пул реквест
git add fileNames
- добавляет файлы для коммитаgit comit -m 'message'
- коммит добавленные файлы с сообщениемgit fetch
- запрашивает информацию о ветках с удаленного репозиторияgit push
- отправляет данные на удаленный репозиторийgit pull
- получает данные с удаленного репозитория
git checkout name
- переключамся на существующую веткуgit checkout -b name
- создаем новую ветку и переключаемся на нееgit branch
- получаем список доступных ветокgit merge name
- запускает процесс слияния двух ветокgit merge --continue
- продолжает процесс слияния после разрешения мердж конфликтовgit merge --abort
- сбрасывает прогресс слияния веток