SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
feature
                                                          release branches
                       branches            develop                                     hot xes   master




                                                                                                          Tag




Time
                                                                                                          0.1



                           Major                                         Severe bug
                         feature for                                        xed for
        Feature
                        next release                                     production:
       for future                                                         hot x 0.2
        release

                                                          Incorporate
                                                            bug x in
                                                            develop


                                                                                                          Tag
                                                                                                          0.2



                                                                                Start of
                                                                                release
                                                                               branch for

                    From this point on,                                           1.0
                       “next release”
                    means the release
                         after 1.0


                                                                                 Only
                                                                               bug xes!




                                                          Bug xes from                                    Tag
                                                           rel. branch
                                                             may be                                       1.0
                                                          continuously
                                                          merged back
                                                          into develop




                                          Author: Vincent Driessen
                                          Original blog post: http://nvie.com/archives/323
                                          License: Creative Commons
The main branches

• Branches
 ‣ master
 ‣ develop
The main branches

• Lifetime
 ‣ infinite
• Usage
• master -> production-ready
• develop -> latest for next release
develop                master




                                                   Tag




    Time
                                                   0.1




initial git to create develop branch, start development
Supporting branches

• Branches
 ‣ feature
 ‣ release
 ‣ hotfix
Feature branches
• May branch off from: develop
• Must merge back into: develop
• Branch naming convention: anything except
  master, develop, release/*, hotfix/*
• Typically exist in developer repos only, not
  in origin
Feature branches

• Create a feature branch
 • When starting work on a new feature,
     branch off from the develop branch
 •   $ git checkout -b myfeature develop
Feature branches

• Incorporating a finished feature on develop
 • merge into the develop branch
 •   $ git checkout develop

 •   $ git merge --no-ff myfeature

 •   $ git branch -d myfeature

 •   $ git push origin develop
Feature branches
• The --no-ff flag avoids losing information
  about the historical existence of a feature
feature
                     branches       develop   master




                                                       Tag




 Time
                                                       0.1



                        Major
                      feature for
         Feature
                     next release
        for future
         release




create feature/* branches to start new features
feature
                          branches       develop   master




                                                            Tag




      Time
                                                            0.1



                             Major
                           feature for
              Feature
                          next release
             for future
              release




when finish develop features, merge back to develop branch
develop               master




                                          Tag




Time
                                          0.1




       delete feature branches
Release branches

• May branch off from: develop
• Must merge back into: develop and
  master
• Branch naming convention: release/*
Release branches

• Creating a release branch
    • $ git checkout -b release/1.2 develop
•   Finishing a release branch
    •   $   git   checkout master
    •   $   git   merge --no-ff release/1.2
    •   $   git   tag -a 1.2
    •   $   git   checkout develop
    •   $   git   merge --no-ff release/1.2
    •   $   git   branch -d release/1.2
release branches
              develop                                   master




                                                                 Tag




Time
                                                                 0.1




                                                                 Tag
                                                                 0.2



                                            Start of
                                            release
                                           branch for
                                              1.0




create release/* branch to ready to release
release branches
                           develop                                   master




                                                                              Tag




            Time
                                                                              0.1




                                                                              Tag
                                                                              0.2



                                                         Start of
                                                         release
                                                        branch for
                                                           1.0




                                                          Only
                                                        bug xes!




                                     Bug xes from                             Tag
                                      rel. branch
                                        may be                                1.0
                                     continuously
                                     merged back
                                     into develop




when finish test or fix bugs, merge back to master and develop branches
develop               master




                                          Tag




Time
                                          0.1




                                          Tag
                                          0.2




                                          Tag
                                          1.0




       delete release/* branch
Hotfix branches

• May branch off from: master
• Must merge back into: develop and
  master
• Branch naming convention: hotfix/*
Hotfix branches

• Creating the hotfix branch
    • $ git checkout -b hotfix/1.2.1      master


•   Finishing a hotfix branch
    •   $   git   checkout master
    •   $   git   merge --no-ff hotfix/1.2.1
    •   $   git   checkout develop
    •   $   git   merge --no-ff hotfix/1.2.1
    •   $   git   branch -d hotfix/1.2.1
develop                  hot xes   master




                                                            Tag




Time
                                                            0.1



                           Severe bug
                              xed for
                           production:
                            hot x 0.2




       create hotfix/* branch to fix bugs
develop                               hot xes   master




                                                                                Tag




         Time
                                                                                0.1



                                               Severe bug
                                                  xed for
                                               production:
                                                hot x 0.2

                                 Incorporate
                                   bug x in
                                   develop


                                                                                Tag
                                                                                0.2




when finish fix bugs, merge back to master and develop branches
develop               master




                                           Tag




Time
                                           0.1




                                           Tag
                                           0.2




       delete hotfix/* branches
Refernce


• http://bit.ly/gitflow-1

Más contenido relacionado

Destacado

Наталья Желнова — Как обзавестись аналитиками и получить от них пользу в проекте
Наталья Желнова — Как обзавестись аналитиками и получить от них пользу в проектеНаталья Желнова — Как обзавестись аналитиками и получить от них пользу в проекте
Наталья Желнова — Как обзавестись аналитиками и получить от них пользу в проектеDaria Oreshkina
 
Аттестация и карьерный рост аналитиков
Аттестация и карьерный рост аналитиковАттестация и карьерный рост аналитиков
Аттестация и карьерный рост аналитиковSQALab
 
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014it-people
 
Инструменты управления требованиями: затычки, костыли и грабли
Инструменты управления требованиями: затычки, костыли и граблиИнструменты управления требованиями: затычки, костыли и грабли
Инструменты управления требованиями: затычки, костыли и граблиSQALab
 
Управление требованиями VS Разработка требований. Принципы и инструменты
Управление требованиями VS Разработка требований. Принципы и инструментыУправление требованиями VS Разработка требований. Принципы и инструменты
Управление требованиями VS Разработка требований. Принципы и инструментыSQALab
 
Как быть заказчиком продукта?
Как быть заказчиком продукта?Как быть заказчиком продукта?
Как быть заказчиком продукта?Denis Beskov
 
05 задачи эксперта в работе аналитика
05 задачи эксперта в работе аналитика05 задачи эксперта в работе аналитика
05 задачи эксперта в работе аналитикаNatalya Sveshnikova
 
Техники сбора пользовательских требований
Техники сбора пользовательских требованийТехники сбора пользовательских требований
Техники сбора пользовательских требованийSQALab
 
Оценка эффективности работы аналитика
Оценка эффективности работы аналитикаОценка эффективности работы аналитика
Оценка эффективности работы аналитикаSQALab
 
Идеальный аналитик и почему его не может быть
Идеальный аналитик и почему его не может бытьИдеальный аналитик и почему его не может быть
Идеальный аналитик и почему его не может бытьSQALab
 
Контрольный список для проверки требований
Контрольный список для проверки требованийКонтрольный список для проверки требований
Контрольный список для проверки требованийIvan Shamaev
 
Глава 9 методы и техники бизнес-анализа (babok 2.0 на русском скачать)
Глава 9 методы и техники бизнес-анализа (babok 2.0 на русском скачать)Глава 9 методы и техники бизнес-анализа (babok 2.0 на русском скачать)
Глава 9 методы и техники бизнес-анализа (babok 2.0 на русском скачать)Ivan Shamaev
 
Управление требованиями
Управление требованиямиУправление требованиями
Управление требованиямиIvan Shamaev
 
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...QAFest
 
Введение в моделирование бизнес процессов
Введение в моделирование бизнес процессовВведение в моделирование бизнес процессов
Введение в моделирование бизнес процессовNatalia Zhelnova
 
Полезные навыки аналитиков - как стать профессионалом
Полезные навыки аналитиков - как стать профессионаломПолезные навыки аналитиков - как стать профессионалом
Полезные навыки аналитиков - как стать профессионаломSQALab
 

Destacado (17)

Наталья Желнова — Как обзавестись аналитиками и получить от них пользу в проекте
Наталья Желнова — Как обзавестись аналитиками и получить от них пользу в проектеНаталья Желнова — Как обзавестись аналитиками и получить от них пользу в проекте
Наталья Желнова — Как обзавестись аналитиками и получить от них пользу в проекте
 
САПР_СALS
САПР_СALSСАПР_СALS
САПР_СALS
 
Аттестация и карьерный рост аналитиков
Аттестация и карьерный рост аналитиковАттестация и карьерный рост аналитиков
Аттестация и карьерный рост аналитиков
 
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
 
Инструменты управления требованиями: затычки, костыли и грабли
Инструменты управления требованиями: затычки, костыли и граблиИнструменты управления требованиями: затычки, костыли и грабли
Инструменты управления требованиями: затычки, костыли и грабли
 
Управление требованиями VS Разработка требований. Принципы и инструменты
Управление требованиями VS Разработка требований. Принципы и инструментыУправление требованиями VS Разработка требований. Принципы и инструменты
Управление требованиями VS Разработка требований. Принципы и инструменты
 
Как быть заказчиком продукта?
Как быть заказчиком продукта?Как быть заказчиком продукта?
Как быть заказчиком продукта?
 
05 задачи эксперта в работе аналитика
05 задачи эксперта в работе аналитика05 задачи эксперта в работе аналитика
05 задачи эксперта в работе аналитика
 
Техники сбора пользовательских требований
Техники сбора пользовательских требованийТехники сбора пользовательских требований
Техники сбора пользовательских требований
 
Оценка эффективности работы аналитика
Оценка эффективности работы аналитикаОценка эффективности работы аналитика
Оценка эффективности работы аналитика
 
Идеальный аналитик и почему его не может быть
Идеальный аналитик и почему его не может бытьИдеальный аналитик и почему его не может быть
Идеальный аналитик и почему его не может быть
 
Контрольный список для проверки требований
Контрольный список для проверки требованийКонтрольный список для проверки требований
Контрольный список для проверки требований
 
Глава 9 методы и техники бизнес-анализа (babok 2.0 на русском скачать)
Глава 9 методы и техники бизнес-анализа (babok 2.0 на русском скачать)Глава 9 методы и техники бизнес-анализа (babok 2.0 на русском скачать)
Глава 9 методы и техники бизнес-анализа (babok 2.0 на русском скачать)
 
Управление требованиями
Управление требованиямиУправление требованиями
Управление требованиями
 
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
 
Введение в моделирование бизнес процессов
Введение в моделирование бизнес процессовВведение в моделирование бизнес процессов
Введение в моделирование бизнес процессов
 
Полезные навыки аналитиков - как стать профессионалом
Полезные навыки аналитиков - как стать профессионаломПолезные навыки аналитиков - как стать профессионалом
Полезные навыки аналитиков - как стать профессионалом
 

Similar a Gitflow Model

Git version control
Git version controlGit version control
Git version controlDavid Xie
 
Subversion to Git Migration
Subversion to Git MigrationSubversion to Git Migration
Subversion to Git MigrationTim Massey
 
Git flow Introduction
Git flow IntroductionGit flow Introduction
Git flow IntroductionDavid Paluy
 
Planning with timeline
Planning with timelinePlanning with timeline
Planning with timelineOleg Seriaga
 
Planning with timeline
Planning with timelinePlanning with timeline
Planning with timelineTarget Process
 
A successful Git branching model
A successful Git branching model A successful Git branching model
A successful Git branching model abodeltae
 
A Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching StrategyA Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching StrategyVivek Parihar
 
How We Use GitHub
How We Use GitHubHow We Use GitHub
How We Use GitHubNYC DevShop
 
Gitflow - Una metología para manejo de Branches
Gitflow - Una metología para manejo de BranchesGitflow - Una metología para manejo de Branches
Gitflow - Una metología para manejo de BranchesJavier Alvarez
 
Clarive 7 Branching Model
Clarive 7 Branching ModelClarive 7 Branching Model
Clarive 7 Branching ModelClarive
 
GitFlow Workshop
GitFlow WorkshopGitFlow Workshop
GitFlow WorkshopSyed Imam
 

Similar a Gitflow Model (20)

Git version control
Git version controlGit version control
Git version control
 
Uber git workflow
Uber git workflowUber git workflow
Uber git workflow
 
Uber git workflow
Uber git workflowUber git workflow
Uber git workflow
 
Uber git workflow
Uber git workflowUber git workflow
Uber git workflow
 
Git flow workflow example
Git flow workflow exampleGit flow workflow example
Git flow workflow example
 
Git workflows
Git workflowsGit workflows
Git workflows
 
Gitflow Workflow
Gitflow WorkflowGitflow Workflow
Gitflow Workflow
 
Git
GitGit
Git
 
Subversion to Git Migration
Subversion to Git MigrationSubversion to Git Migration
Subversion to Git Migration
 
Git flow Introduction
Git flow IntroductionGit flow Introduction
Git flow Introduction
 
Planning with timeline
Planning with timelinePlanning with timeline
Planning with timeline
 
Planning with timeline
Planning with timelinePlanning with timeline
Planning with timeline
 
A successful Git branching model
A successful Git branching model A successful Git branching model
A successful Git branching model
 
A Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching StrategyA Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching Strategy
 
Subversion
SubversionSubversion
Subversion
 
How We Use GitHub
How We Use GitHubHow We Use GitHub
How We Use GitHub
 
Gitflow - Una metología para manejo de Branches
Gitflow - Una metología para manejo de BranchesGitflow - Una metología para manejo de Branches
Gitflow - Una metología para manejo de Branches
 
Hdfs high availability
Hdfs high availabilityHdfs high availability
Hdfs high availability
 
Clarive 7 Branching Model
Clarive 7 Branching ModelClarive 7 Branching Model
Clarive 7 Branching Model
 
GitFlow Workshop
GitFlow WorkshopGitFlow Workshop
GitFlow Workshop
 

Último

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 

Último (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 

Gitflow Model

  • 1. feature release branches branches develop hot xes master Tag Time 0.1 Major Severe bug feature for xed for Feature next release production: for future hot x 0.2 release Incorporate bug x in develop Tag 0.2 Start of release branch for From this point on, 1.0 “next release” means the release after 1.0 Only bug xes! Bug xes from Tag rel. branch may be 1.0 continuously merged back into develop Author: Vincent Driessen Original blog post: http://nvie.com/archives/323 License: Creative Commons
  • 2. The main branches • Branches ‣ master ‣ develop
  • 3. The main branches • Lifetime ‣ infinite • Usage • master -> production-ready • develop -> latest for next release
  • 4. develop master Tag Time 0.1 initial git to create develop branch, start development
  • 5. Supporting branches • Branches ‣ feature ‣ release ‣ hotfix
  • 6. Feature branches • May branch off from: develop • Must merge back into: develop • Branch naming convention: anything except master, develop, release/*, hotfix/* • Typically exist in developer repos only, not in origin
  • 7. Feature branches • Create a feature branch • When starting work on a new feature, branch off from the develop branch • $ git checkout -b myfeature develop
  • 8. Feature branches • Incorporating a finished feature on develop • merge into the develop branch • $ git checkout develop • $ git merge --no-ff myfeature • $ git branch -d myfeature • $ git push origin develop
  • 9. Feature branches • The --no-ff flag avoids losing information about the historical existence of a feature
  • 10. feature branches develop master Tag Time 0.1 Major feature for Feature next release for future release create feature/* branches to start new features
  • 11. feature branches develop master Tag Time 0.1 Major feature for Feature next release for future release when finish develop features, merge back to develop branch
  • 12. develop master Tag Time 0.1 delete feature branches
  • 13. Release branches • May branch off from: develop • Must merge back into: develop and master • Branch naming convention: release/*
  • 14. Release branches • Creating a release branch • $ git checkout -b release/1.2 develop • Finishing a release branch • $ git checkout master • $ git merge --no-ff release/1.2 • $ git tag -a 1.2 • $ git checkout develop • $ git merge --no-ff release/1.2 • $ git branch -d release/1.2
  • 15. release branches develop master Tag Time 0.1 Tag 0.2 Start of release branch for 1.0 create release/* branch to ready to release
  • 16. release branches develop master Tag Time 0.1 Tag 0.2 Start of release branch for 1.0 Only bug xes! Bug xes from Tag rel. branch may be 1.0 continuously merged back into develop when finish test or fix bugs, merge back to master and develop branches
  • 17. develop master Tag Time 0.1 Tag 0.2 Tag 1.0 delete release/* branch
  • 18. Hotfix branches • May branch off from: master • Must merge back into: develop and master • Branch naming convention: hotfix/*
  • 19. Hotfix branches • Creating the hotfix branch • $ git checkout -b hotfix/1.2.1 master • Finishing a hotfix branch • $ git checkout master • $ git merge --no-ff hotfix/1.2.1 • $ git checkout develop • $ git merge --no-ff hotfix/1.2.1 • $ git branch -d hotfix/1.2.1
  • 20. develop hot xes master Tag Time 0.1 Severe bug xed for production: hot x 0.2 create hotfix/* branch to fix bugs
  • 21. develop hot xes master Tag Time 0.1 Severe bug xed for production: hot x 0.2 Incorporate bug x in develop Tag 0.2 when finish fix bugs, merge back to master and develop branches
  • 22. develop master Tag Time 0.1 Tag 0.2 delete hotfix/* branches