SlideShare ist ein Scribd-Unternehmen logo
1 von 27
GIT-FLOW
МОДЕЛЬ ВЕТВЛЕНИЯ РАЗРАБОТКИ В GIT
АВТОРЫ
Git: Linus Torvalds
Git-flow: Vincent Driessen
Презентация: Sergey
Chudakov
Актуальная версия:
www.ruops.dev
ДЛЯ ЧЕГО: КОМАНДНАЯ РАЗРАБОТКА ПО
СТАНДАРТУ, СТАБИЛИЗАЦИЯ, CI/CD
Git Flow является методологией работы с Git. Это значит, она
определяет, какие ветки нужно создать и как производить их
слияние
git-flow является оберткой для Git. Команда git flow init является
расширением стандартной команды git init и ничего не меняет в
вашем репозитории, кроме того, что создает ветки. Есть интеграции
с IDE и GUI менеджерами репозитория
• Вместо использования одной ветки master, в этой модели
используется две ветки для записи истории проекта. В ветке
master хранится официальная история релиза, а ветка
develop служит в качестве интеграционной ветки для новых
функций. Также, удобно тегировать все коммиты в ветке
master номером версии
ИНИЦИАЛИЗАЦИЯ GIT FLOW
• Первым шагом является создание ветки develop от ветки
master
• В этой ветке будет находится вся история проекта, в то
время как master содержит частичную историю
• Остальные разработчики теперь должны клонировать
центральный репозиторий и настроить отслеживание для
ветки develop
• Каждая новая функциональность должна разрабатываться в
отдельной ветке, которую нужно отправлять (push) в
центральный репозиторий (origin) для создания резервной
копии/для совместной работы команды
• Ветки функций создаются не на основе master, a на основе
develop. Когда работа над новой функциональностью
завершена, она вливается назад в develop
• Новый код не должен отправляться напрямую в master
ОБРАТИТЕ
ВНИМАНИЕ, ЧТО
ВЕТКИ ФУНКЦИЙ
ОБЪЕДИНЯЮТСЯ С
ВЕТКОЙ DEVELOP И
УДАЛЯЮТСЯ ПОСЛЕ
СЛИЯНИЯ
СОЗДАНИЕ ВЕТКИ ФУНКЦИИ
Для примера создадим ветку с названием production-build
• Без использования расширений git-flow:
git checkout -b feature/production-build develop
• При использовании git-flow:
git flow feature start production-build
ПУБЛИКАЦИЯ, ПОЛУЧЕНИЕ,
ОТСЛЕЖИВАНИЕ
• Публикация фичи для совместной разработки:
git flow feature publish production-build
• Получение фичи, опубликованной другим разработчиком:
git flow feature pull origin production-build
• Отслеживать фичу в репозитории origin:
git flow feature track production-build
ЗАВЕРШЕНИЕ РАБОТЫ С ВЕТКОЙ
• Без использования расширений git-flow:
git checkout develop
git merge --no-ff production-build
• При использовании git-flow:
git flow feature finish production-build
• Когда в ветку develop уже слито достаточно нового кода для
релиза (или подходит установленная дата предрелиза), от
ветки develop создается релизная ветка, например,
release/0.3.0
• Создание данной ветки означает начало следующего цикла
релиза, в ходе которой новая функциональность уже не
добавляется, а производится только отладка багов, создание
документации и решение других задач, связанных с релизом
• Когда все готово, ветка release сливается в master, и ей
присваивается тег с версией (r0.3.0). Кроме этого, она
должна быть также слита обратно в ветку develop, в которой
с момента создания ветки релиза могли добавляться
изменения с момента создания ветки релиза
• Использование отдельной ветки для подготовки релиза
позволяет одной команде дорабатывать текущий релиз, пока
другая команда уже работает над функциональностью для
следующего релиза
• Это также позволяет разграничить этапы разработки.
Например, можно сказать: «На этой неделе мы готовимся к
версии 1.0.0» и фактически увидеть это в структуре
репозитория
ВЕТКИ РЕЛИЗОВ ОСНОВАНЫ НА ВЕТКЕ DEVELOP
НОВАЯ ВЕТКА RELEASE МОЖЕТ БЫТЬ СОЗДАНА
С ИСПОЛЬЗОВАНИЕМ СЛЕДУЮЩИХ КОМАНД
• Без использования расширений git-flow:
git checkout develop
git checkout -b release/0.5.0
• При использовании git-flow:
git flow release start 0.5.0 # ещё одним параметром может быть указан [BASE], сейчас это
develop
git flow release publish 0.5.0
При желании вы можете указать [BASE] - коммит в виде его хеша sha-1, чтобы начать
релиз с него, коммит должен принадлежать ветке develop
• Когда релиз готов к отправке, он сливается в master и develop,
а ветка релиза удаляется (может быть сохранена при
продуктовой разработке и необходимости поддержки
нескольких релизов). Важно влить release обратно в develop,
поскольку в ветку релиза могут быть добавлены критические
обновления и они должны быть доступны в дальнейшем. Если
ваша команда делает акцент на проверку кода, этот момент
идеален для мердж-реквеста (MR, PR, Merge/Pull Request)
• Релиз помечается тегом равным его имени в ветке master. При
инициализации может быть задан префикс для тега версии
или указан в файле .git/config позже. Префикс тега не
добавляется к release ветке
• Без использования расширений git-flow:
git checkout develop
git merge release/0.7.0
git checkout master
git merge release/0.7.0
git tag r0.7.0
• Не забудьте отправить изменения в тегах с помощью команды:
git push --tags
• Или при использовании git-flow:
git flow release finish '0.7.0'
• Ветки hotfix
используются для
быстрого внесения
исправлений в
рабочую версию кода
• Ветки hotfix очень
похожи на ветки
release и feature, за
исключением того, что
они созданы от master,
а не от develop
• hotfix - это единственная ветка, которая должна быть
создана непосредственно от master. Как только
исправление завершено, ветка hotfix должна быть
объединена как с master, так и с develop (или с веткой
текущего релиза), а master должен быть помечен
обновленным номером версии
• Наличие специальной ветки для исправления ошибок
позволяет команде решать проблемы, не прерывая
остальную часть рабочего процесса и не ожидая
следующего цикла подготовки к релизу. Можно говорить о
ветках hotfix как об особых ветках release, которые
работают напрямую с master
ВЕТКА HOTFIX МОЖЕТ БЫТЬ СОЗДАНА С
ПОМОЩЬЮ СЛЕДУЮЩИХ КОМАНД
• Без использования расширений git-flow:
git checkout master
git checkout -b hotfix_branch
• Или при использовании git-flow:
git flow hotfix start hotfix_branch [BASE]
ВЕТКА HOTFIX ОБЪЕДИНЯЕТСЯ КАК С
MASTER, ТАК И С DEVELOP
git checkout master
git merge hotfix_branch
git checkout develop
git merge hotfix_branch
git branch -d hotfix_branch
или через git-flow:
git flow hotfix finish hotfix_branch
КЛЮЧЕВЫЕ ИДЕИ, КОТОРЫЕ НУЖНО
ЗАПОМНИТЬ О GIT FLOW
• Данная модель отлично подходит для организации
рабочего процесса на основе релизов
• Git-flow предлагает создание отдельной ветки для
исправлений ошибок в продуктовой среде
• Модель может быть дополнена использованием
Project-ID в названии ветки для интеграции таск-
трекера: feature/VK-342-ci
• Модель Git-flow достаточна, проста и стандартна. Для
добавления Staging и Pre-production веток
используйте модель GitLab Flow, а для упрощения и
ПОСЛЕДОВАТЕЛЬНОСТЬ РАБОТЫ ПРИ
ИСПОЛЬЗОВАНИИ МОДЕЛИ GIT-FLOW
1. Из master создается ветка develop
2. Из develop создаются ветки feature
3. Когда разработка новой функциональности завершена – фичеветка
объединяется с веткой develop
4. Из develop создается ветка release
5. Когда ветка релиза готова, она объединяется с develop и master
6. Если в master обнаружена проблема, из нее создается ветка hotfix
7. Как только исправление на ветке hotfix завершено, она объединяется с
develop и master
ПЛАГИНЫ ДЛЯ IDE
• InelliJ IDEA:
https://plugins.jetbrains.com/plu
gin/7315-git-flow-integration
• Visual Studio
Code: https://marketplace.visuals
tudio.com/items?itemName=vecto
r-of-bool.gitflow
• VS Code GUI:
https://github.com/PsykoSoldi3r/
vscode-git-flow
ATLASSIAN SOURCETREE
• Инициализация репозитория
• Старт ветки feature/release
• Работа по реализации фичи и
исправлений в рамках ветки
• Завершение ветки feature перед
закрытием таска
• При завершении ветки release
удаляется ветка и создаётся тег с
номером версии в ветке master
• Скачать бесплатно:
sourcetreeapp.com
choco install sourcetree
УСТАНОВКА ДЛЯ КОМАНДНОЙ СТРОКИ
• Linux
$ sudo apt install git-flow
• OS X
$ brew install git-flow-avh
• Windows:
входит в комплект и работает из Git bash и cmd:
gitforwindows.org
BONUS
Автодополнение команды git flow с помощью Tab для Bash и Zsh
• https://github.com/bobthecow/git-flow-completion
Шпаргалка по git-flow с подсказками на первое время
• https://danielkummer.github.io/git-flow-cheatsheet/index.ru_RU.html
Хуки для автоматического повышения версии и сообщения для тега
• https://github.com/jaspernbrouwer/git-flow-hooks
При подготовке презентации использовались материалы:
• https://bitworks.software/2019-03-12-gitflow-workflow.html
Презентация подготовлена для доклада в компании БИТ
• bittechno.ru

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Git and github 101
Git and github 101Git and github 101
Git and github 101
 
Git best practices workshop
Git best practices workshopGit best practices workshop
Git best practices workshop
 
GitHub Basics - Derek Bable
GitHub Basics - Derek BableGitHub Basics - Derek Bable
GitHub Basics - Derek Bable
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
工程師必備第一工具 - Git
工程師必備第一工具 - Git工程師必備第一工具 - Git
工程師必備第一工具 - Git
 
Github
GithubGithub
Github
 
An Introduction to Git
An Introduction to GitAn Introduction to Git
An Introduction to Git
 
Introduction to Git and Github
Introduction to Git and GithubIntroduction to Git and Github
Introduction to Git and Github
 
Git workflows
Git workflowsGit workflows
Git workflows
 
Github
GithubGithub
Github
 
Introduction to Git and Github
Introduction to Git and GithubIntroduction to Git and Github
Introduction to Git and Github
 
Git and Github Session
Git and Github SessionGit and Github Session
Git and Github Session
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
Dealing with Merge Conflicts in Git
Dealing with Merge Conflicts in GitDealing with Merge Conflicts in Git
Dealing with Merge Conflicts in Git
 
Git Pull Requests
Git Pull RequestsGit Pull Requests
Git Pull Requests
 
Intro to Git and GitHub
Intro to Git and GitHubIntro to Git and GitHub
Intro to Git and GitHub
 
Difference between gitlab vs github vs bitbucket
Difference between gitlab vs github vs bitbucketDifference between gitlab vs github vs bitbucket
Difference between gitlab vs github vs bitbucket
 
Overview of github
Overview of githubOverview of github
Overview of github
 
Introduction to git hub
Introduction to git hubIntroduction to git hub
Introduction to git hub
 
Advanced Git Tutorial
Advanced Git TutorialAdvanced Git Tutorial
Advanced Git Tutorial
 

Ähnlich wie Презентация Git-flow (на русском)

базовые принципы работы с Git
базовые принципы работы с Gitбазовые принципы работы с Git
базовые принципы работы с GitDressTester
 
Основы работы с Git
Основы работы с GitОсновы работы с Git
Основы работы с GitDenis Latushkin
 
Controlul versiunilor
Controlul versiunilor Controlul versiunilor
Controlul versiunilor Dmitrii Stoian
 
что такое Git и как с ним бороться
что такое Git и как с ним боротьсячто такое Git и как с ним бороться
что такое Git и как с ним боротьсяВладимир Кожаев
 
GIT Slides (25.03.2015)
GIT Slides (25.03.2015)GIT Slides (25.03.2015)
GIT Slides (25.03.2015)Ilya V
 
Git для начинающих
Git для начинающихGit для начинающих
Git для начинающихVadim Drobinin
 
Системы управления версиями (VCS). Знакомство с Git.
Системы управления версиями (VCS). Знакомство с Git.Системы управления версиями (VCS). Знакомство с Git.
Системы управления версиями (VCS). Знакомство с Git.Dmytro Olaresko
 
Git и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаGit и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаПупена Александр
 
Scino: DVCS на примере Git
Scino: DVCS на примере GitScino: DVCS на примере Git
Scino: DVCS на примере GitSCINO
 
Спецкурс-2015. Занятие 05. Системы контроля версий
Спецкурс-2015. Занятие 05. Системы контроля версийСпецкурс-2015. Занятие 05. Системы контроля версий
Спецкурс-2015. Занятие 05. Системы контроля версий7bits
 
Адаптация Git flow при коллективной разработке на 1с
Адаптация Git flow при коллективной разработке на 1сАдаптация Git flow при коллективной разработке на 1с
Адаптация Git flow при коллективной разработке на 1сAlexey Lustin
 
Начало работы с Git (Visual Studio 2013, Bitbucket) - version 2013
Начало работы с Git (Visual Studio 2013, Bitbucket) - version 2013Начало работы с Git (Visual Studio 2013, Bitbucket) - version 2013
Начало работы с Git (Visual Studio 2013, Bitbucket) - version 2013Андрей Кухаренко
 
GIT: что внутри, и как это работает?
GIT: что внутри, и как это работает?GIT: что внутри, и как это работает?
GIT: что внутри, и как это работает?Tados
 

Ähnlich wie Презентация Git-flow (на русском) (20)

GitFlow_MOEX
GitFlow_MOEXGitFlow_MOEX
GitFlow_MOEX
 
Git
GitGit
Git
 
Git for you
Git for youGit for you
Git for you
 
Git presentation
Git presentationGit presentation
Git presentation
 
базовые принципы работы с Git
базовые принципы работы с Gitбазовые принципы работы с Git
базовые принципы работы с Git
 
Основы работы с Git
Основы работы с GitОсновы работы с Git
Основы работы с Git
 
Controlul versiunilor
Controlul versiunilor Controlul versiunilor
Controlul versiunilor
 
что такое Git и как с ним бороться
что такое Git и как с ним боротьсячто такое Git и как с ним бороться
что такое Git и как с ним бороться
 
Git basis
Git basisGit basis
Git basis
 
GIT Slides (25.03.2015)
GIT Slides (25.03.2015)GIT Slides (25.03.2015)
GIT Slides (25.03.2015)
 
Начало работы с Git (версия 2016)
Начало работы с Git (версия 2016)Начало работы с Git (версия 2016)
Начало работы с Git (версия 2016)
 
Git для начинающих
Git для начинающихGit для начинающих
Git для начинающих
 
Системы управления версиями (VCS). Знакомство с Git.
Системы управления версиями (VCS). Знакомство с Git.Системы управления версиями (VCS). Знакомство с Git.
Системы управления версиями (VCS). Знакомство с Git.
 
Giflow
GiflowGiflow
Giflow
 
Git и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаGit и GitHub для создания учебного контента
Git и GitHub для создания учебного контента
 
Scino: DVCS на примере Git
Scino: DVCS на примере GitScino: DVCS на примере Git
Scino: DVCS на примере Git
 
Спецкурс-2015. Занятие 05. Системы контроля версий
Спецкурс-2015. Занятие 05. Системы контроля версийСпецкурс-2015. Занятие 05. Системы контроля версий
Спецкурс-2015. Занятие 05. Системы контроля версий
 
Адаптация Git flow при коллективной разработке на 1с
Адаптация Git flow при коллективной разработке на 1сАдаптация Git flow при коллективной разработке на 1с
Адаптация Git flow при коллективной разработке на 1с
 
Начало работы с Git (Visual Studio 2013, Bitbucket) - version 2013
Начало работы с Git (Visual Studio 2013, Bitbucket) - version 2013Начало работы с Git (Visual Studio 2013, Bitbucket) - version 2013
Начало работы с Git (Visual Studio 2013, Bitbucket) - version 2013
 
GIT: что внутри, и как это работает?
GIT: что внутри, и как это работает?GIT: что внутри, и как это работает?
GIT: что внутри, и как это работает?
 

Презентация Git-flow (на русском)

  • 2. АВТОРЫ Git: Linus Torvalds Git-flow: Vincent Driessen Презентация: Sergey Chudakov Актуальная версия: www.ruops.dev
  • 3. ДЛЯ ЧЕГО: КОМАНДНАЯ РАЗРАБОТКА ПО СТАНДАРТУ, СТАБИЛИЗАЦИЯ, CI/CD Git Flow является методологией работы с Git. Это значит, она определяет, какие ветки нужно создать и как производить их слияние git-flow является оберткой для Git. Команда git flow init является расширением стандартной команды git init и ничего не меняет в вашем репозитории, кроме того, что создает ветки. Есть интеграции с IDE и GUI менеджерами репозитория
  • 4. • Вместо использования одной ветки master, в этой модели используется две ветки для записи истории проекта. В ветке master хранится официальная история релиза, а ветка develop служит в качестве интеграционной ветки для новых функций. Также, удобно тегировать все коммиты в ветке master номером версии
  • 5.
  • 6. ИНИЦИАЛИЗАЦИЯ GIT FLOW • Первым шагом является создание ветки develop от ветки master • В этой ветке будет находится вся история проекта, в то время как master содержит частичную историю • Остальные разработчики теперь должны клонировать центральный репозиторий и настроить отслеживание для ветки develop
  • 7. • Каждая новая функциональность должна разрабатываться в отдельной ветке, которую нужно отправлять (push) в центральный репозиторий (origin) для создания резервной копии/для совместной работы команды • Ветки функций создаются не на основе master, a на основе develop. Когда работа над новой функциональностью завершена, она вливается назад в develop • Новый код не должен отправляться напрямую в master
  • 8. ОБРАТИТЕ ВНИМАНИЕ, ЧТО ВЕТКИ ФУНКЦИЙ ОБЪЕДИНЯЮТСЯ С ВЕТКОЙ DEVELOP И УДАЛЯЮТСЯ ПОСЛЕ СЛИЯНИЯ
  • 9. СОЗДАНИЕ ВЕТКИ ФУНКЦИИ Для примера создадим ветку с названием production-build • Без использования расширений git-flow: git checkout -b feature/production-build develop • При использовании git-flow: git flow feature start production-build
  • 10. ПУБЛИКАЦИЯ, ПОЛУЧЕНИЕ, ОТСЛЕЖИВАНИЕ • Публикация фичи для совместной разработки: git flow feature publish production-build • Получение фичи, опубликованной другим разработчиком: git flow feature pull origin production-build • Отслеживать фичу в репозитории origin: git flow feature track production-build
  • 11. ЗАВЕРШЕНИЕ РАБОТЫ С ВЕТКОЙ • Без использования расширений git-flow: git checkout develop git merge --no-ff production-build • При использовании git-flow: git flow feature finish production-build
  • 12. • Когда в ветку develop уже слито достаточно нового кода для релиза (или подходит установленная дата предрелиза), от ветки develop создается релизная ветка, например, release/0.3.0 • Создание данной ветки означает начало следующего цикла релиза, в ходе которой новая функциональность уже не добавляется, а производится только отладка багов, создание документации и решение других задач, связанных с релизом • Когда все готово, ветка release сливается в master, и ей присваивается тег с версией (r0.3.0). Кроме этого, она должна быть также слита обратно в ветку develop, в которой с момента создания ветки релиза могли добавляться изменения с момента создания ветки релиза
  • 13.
  • 14. • Использование отдельной ветки для подготовки релиза позволяет одной команде дорабатывать текущий релиз, пока другая команда уже работает над функциональностью для следующего релиза • Это также позволяет разграничить этапы разработки. Например, можно сказать: «На этой неделе мы готовимся к версии 1.0.0» и фактически увидеть это в структуре репозитория
  • 15. ВЕТКИ РЕЛИЗОВ ОСНОВАНЫ НА ВЕТКЕ DEVELOP НОВАЯ ВЕТКА RELEASE МОЖЕТ БЫТЬ СОЗДАНА С ИСПОЛЬЗОВАНИЕМ СЛЕДУЮЩИХ КОМАНД • Без использования расширений git-flow: git checkout develop git checkout -b release/0.5.0 • При использовании git-flow: git flow release start 0.5.0 # ещё одним параметром может быть указан [BASE], сейчас это develop git flow release publish 0.5.0 При желании вы можете указать [BASE] - коммит в виде его хеша sha-1, чтобы начать релиз с него, коммит должен принадлежать ветке develop
  • 16. • Когда релиз готов к отправке, он сливается в master и develop, а ветка релиза удаляется (может быть сохранена при продуктовой разработке и необходимости поддержки нескольких релизов). Важно влить release обратно в develop, поскольку в ветку релиза могут быть добавлены критические обновления и они должны быть доступны в дальнейшем. Если ваша команда делает акцент на проверку кода, этот момент идеален для мердж-реквеста (MR, PR, Merge/Pull Request) • Релиз помечается тегом равным его имени в ветке master. При инициализации может быть задан префикс для тега версии или указан в файле .git/config позже. Префикс тега не добавляется к release ветке
  • 17. • Без использования расширений git-flow: git checkout develop git merge release/0.7.0 git checkout master git merge release/0.7.0 git tag r0.7.0 • Не забудьте отправить изменения в тегах с помощью команды: git push --tags • Или при использовании git-flow: git flow release finish '0.7.0'
  • 18. • Ветки hotfix используются для быстрого внесения исправлений в рабочую версию кода • Ветки hotfix очень похожи на ветки release и feature, за исключением того, что они созданы от master, а не от develop
  • 19. • hotfix - это единственная ветка, которая должна быть создана непосредственно от master. Как только исправление завершено, ветка hotfix должна быть объединена как с master, так и с develop (или с веткой текущего релиза), а master должен быть помечен обновленным номером версии • Наличие специальной ветки для исправления ошибок позволяет команде решать проблемы, не прерывая остальную часть рабочего процесса и не ожидая следующего цикла подготовки к релизу. Можно говорить о ветках hotfix как об особых ветках release, которые работают напрямую с master
  • 20. ВЕТКА HOTFIX МОЖЕТ БЫТЬ СОЗДАНА С ПОМОЩЬЮ СЛЕДУЮЩИХ КОМАНД • Без использования расширений git-flow: git checkout master git checkout -b hotfix_branch • Или при использовании git-flow: git flow hotfix start hotfix_branch [BASE]
  • 21. ВЕТКА HOTFIX ОБЪЕДИНЯЕТСЯ КАК С MASTER, ТАК И С DEVELOP git checkout master git merge hotfix_branch git checkout develop git merge hotfix_branch git branch -d hotfix_branch или через git-flow: git flow hotfix finish hotfix_branch
  • 22. КЛЮЧЕВЫЕ ИДЕИ, КОТОРЫЕ НУЖНО ЗАПОМНИТЬ О GIT FLOW • Данная модель отлично подходит для организации рабочего процесса на основе релизов • Git-flow предлагает создание отдельной ветки для исправлений ошибок в продуктовой среде • Модель может быть дополнена использованием Project-ID в названии ветки для интеграции таск- трекера: feature/VK-342-ci • Модель Git-flow достаточна, проста и стандартна. Для добавления Staging и Pre-production веток используйте модель GitLab Flow, а для упрощения и
  • 23. ПОСЛЕДОВАТЕЛЬНОСТЬ РАБОТЫ ПРИ ИСПОЛЬЗОВАНИИ МОДЕЛИ GIT-FLOW 1. Из master создается ветка develop 2. Из develop создаются ветки feature 3. Когда разработка новой функциональности завершена – фичеветка объединяется с веткой develop 4. Из develop создается ветка release 5. Когда ветка релиза готова, она объединяется с develop и master 6. Если в master обнаружена проблема, из нее создается ветка hotfix 7. Как только исправление на ветке hotfix завершено, она объединяется с develop и master
  • 24. ПЛАГИНЫ ДЛЯ IDE • InelliJ IDEA: https://plugins.jetbrains.com/plu gin/7315-git-flow-integration • Visual Studio Code: https://marketplace.visuals tudio.com/items?itemName=vecto r-of-bool.gitflow • VS Code GUI: https://github.com/PsykoSoldi3r/ vscode-git-flow
  • 25. ATLASSIAN SOURCETREE • Инициализация репозитория • Старт ветки feature/release • Работа по реализации фичи и исправлений в рамках ветки • Завершение ветки feature перед закрытием таска • При завершении ветки release удаляется ветка и создаётся тег с номером версии в ветке master • Скачать бесплатно: sourcetreeapp.com choco install sourcetree
  • 26. УСТАНОВКА ДЛЯ КОМАНДНОЙ СТРОКИ • Linux $ sudo apt install git-flow • OS X $ brew install git-flow-avh • Windows: входит в комплект и работает из Git bash и cmd: gitforwindows.org
  • 27. BONUS Автодополнение команды git flow с помощью Tab для Bash и Zsh • https://github.com/bobthecow/git-flow-completion Шпаргалка по git-flow с подсказками на первое время • https://danielkummer.github.io/git-flow-cheatsheet/index.ru_RU.html Хуки для автоматического повышения версии и сообщения для тега • https://github.com/jaspernbrouwer/git-flow-hooks При подготовке презентации использовались материалы: • https://bitworks.software/2019-03-12-gitflow-workflow.html Презентация подготовлена для доклада в компании БИТ • bittechno.ru