Git flow, github flow, gitlab flow, merge requests, release branches, integration branches, merging, rebasing e cherry picking são algumas das estratégias e operações relacionados com o 'branching model' de um projecto web, nomeadamente em Drupal.
Aqui não existem respostas erradas, cada equipa, cada projeto e cada cliente têm realidades muito diferentes.
Esta sessão é aberta e não tem agenda, tem como objectivo a partilha de experiências e opiniões entre todos os participantes sobre os diferentes 'branching models' que podem ser aplicados no desenvolvimento de um projecto web.
Filipe Pereira
2. 2
1. About me
2. Small introduction about the best known GIT
Branching models / workflows.
3. Share experiences and opinions among all
participants
Agenda
4. 4
About me
● Developer with a focus on product
ownership, team performance and
quality assurance @ Dropsolid
● Member of the board of the
Portuguese Drupal Association
● Started with Drupal 5 back in 2007.
9. ● A develop branch is created from master
● A release branch is created from develop
● Feature branches are created from
develop
● When a feature is complete it is merged
into the develop branch
● When the release branch is done it is
merged into develop and master
● If an issue in master is detected a hotfix
branch is created from master
● Once the hotfix is complete it is merged
to both develop and master
Gitflow
16. 16
5. SOURCES AND USEFUL INFORMATION
3. Git branching models
4. Let’s share
17. 17
Which is the best git workflow?
TOPIC
A Git Workflow is a recipe or recommendation for how to use Git to
accomplish work in a consistent and productive manner.
18. 18
Merging vs Rebasing
TOPIC
Merging is a safe option that preserves the entire history of your
repository, while rebasing creates a linear history by moving your
feature branch onto the tip of master .
19. 19
Tagging
TOPIC
Tags are ref's that point to specific points in Git history. Tagging is
generally used to capture a point in history that is used for a
marked version release (i.e. v1.0.1). A tag is like a branch that
doesn’t change.
20. 20
Merge/Pull request
TOPIC
A Merge Request (MR) is a request to merge one branch into
another.
Use merge requests to visualize and collaborate on proposed
changes to source code.
23. 23
Release branches
TOPIC
A release branch is just a branch in the version control system on
which the code destined for this release can be isolated from
mainline development.