SlideShare une entreprise Scribd logo
1  sur  13
Télécharger pour lire hors ligne
git-flow na prática!
Viagem ao mundo git-flow!
1
Apresentação
● Graduado em Análise de Sistemas
● Pós-Graduação em Desenvolvimento Mobile
● Analista Desenvolvedor de Sistemas de Informação Prefeitura de Fortaleza
marcelosantosadm@gmail.com
https://www.linkedin.com/in/marcelotdsantos
2
git-flow
O git-flow é um conjunto de extensões para o git que provê
operações de alto-nível para repositórios usando o modelo de
branches do Vincent Driessen.
3
https://danielkummer.github.io/git-flow-cheatsheet
Quick Start
O foco é o uso do git-flow, então presume-se que temos um projeto
com o git-flow habilitado e pronto para uso, seguirei as
configurações padrão do git-flow: feature, hotfix etc
git-flow no dia-a-dia (nova feature)
Por meio do terminal, digite:
$ git flow feature start adicionar-menu-de-acesso-ao-sistema
Com isso estamos criando feature branch com nome
adicionar-menu-de-acesso-ao-sistema para realizar a
implementação necessária da feature. Após isso teremos um novo
branch, ao rodar o comando abaixo podemos conferir:
$ git branch
4
Realize as implementações da feature
Verifique o status com a lista de modificações:
$ git status
5
Vamos adicionar tudo ao stage: $ git add .
Vamos fazer o commit das alterações:
$ git commit -m “Informe uma mensagem sobre a implementação”
6
Visualizando o log de commits:
$ git log
Vamos finalizar a nossa feature usando git-flow
$ git flow feature finish adicionar-menu-de-acesso-ao-sistema
7
Verifique o feedback dos comandos realizado, são úteis para aprendizado e solução de problemas do
dia-a-dia. Ao ler as mensagens do git você ficará ciente do que de fato está sendo realizado a cada
comando.
- branch de feature foi mergiado no branch develop
- branch de feature foi removido do repositório local e remoto (estava publicado no remoto)
- seu branch atual agora é o develop
Vamos enviar nossas implementações ao GitLab :-), no caso de uma
feature, após finalizada enviamos as modificações para para o branch
develop para que a feature seja homologada.
$ git push origin develop
8
Após envio para homologação, o webhook (quando configurado) baixará as
modificações no ambiente de homologação do projeto:
http://hom.NOME_DO_PROJETO.domain.ce.gov.br
git-flow no dia-a-dia (fazendo release)
Por meio do terminal, vamos criar uma release usando git-flow:
$ git flow release start v1.0.0
Com isso estamos criando um release branch com nome v1.0.0 para
preparar a publicação da release. Um branch de hotfix é criado a
partir do develop, ou seja, versão que está em homologação
devidamente testado, quando finalizada, a release será mergiada no
master, realizando o deploy para produção.
$ git branch
9
Finalizando e publicando a release
Por meio do terminal, vamos finalizar a release com git-flow:
$ git flow release finish v1.0.0
Com isso estamos finalizando a release v1.0.0 e vamos salvar as mensagens de commit
sugeridas pelo git-flow (serão abertas automaticamente, basta salvar), as features
implementadas e homologadas no develop serão mergiadas no master. Após isso
atualizamos o master, ou seja, publicamos em produção:
$ git push origin develop //publicando release em homologação
$ git push origin master //publicando release em produção
10Lembre-se de atualizar o CHANGELOG.md
git-flow no dia-a-dia (vish surgiu um bug)
Por meio do terminal, vamos criar um hotfix usando git-flow:
$ git flow hotfix start bug-text-update
Com isso estamos criando um hotfix branch com nome
bug-text-update para realizar a implementação para correção do
bug. Um branch de hotfix é criado a partir do master, ou seja, versão
que está em produção, quando finalizada, a correção será mergiada
em ambos, master e develop.
$ git branch
11
finalizando o hotfix
Por meio do terminal, vamos preparar o commit:
$ git add .
$ git commit -m “correção textual”
Por meio do terminal, vamos finalizar o hotfix com git-flow:
$ git flow hotfix finish bug-text-update
Com isso estamos finalizando o hotfix e vamos salvar as mensagens de commit
sugeridas pelo git-flow (serão abertas automaticamente, basta editar e/ou salvar), a
implementação da correção do bug será mergiada em ambos, master e develop. Após
isso atualizamos os remotos:
$ git push origin develop //atualizando ambiente de homologação
$ git push origin master //publicando a correção em produção
12Lembre-se de atualizar o CHANGELOG.md
Obrigado à todos!
13
● Referências
https://danielkummer.github.io/git-flow-cheatsheet
https://git-scm.com/

Contenu connexe

Tendances

Tendances (20)

Git & GitLab
Git & GitLabGit & GitLab
Git & GitLab
 
Git e GitHub - Conceitos Básicos
Git e GitHub - Conceitos BásicosGit e GitHub - Conceitos Básicos
Git e GitHub - Conceitos Básicos
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash Course
 
Presentacion git
Presentacion gitPresentacion git
Presentacion git
 
Git and git flow
Git and git flowGit and git flow
Git and git flow
 
Git branching strategies
Git branching strategiesGit branching strategies
Git branching strategies
 
Git e GitHub
Git e GitHubGit e GitHub
Git e GitHub
 
Git 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using GitGit 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using Git
 
Git best practices workshop
Git best practices workshopGit best practices workshop
Git best practices workshop
 
Basic Git Intro
Basic Git IntroBasic Git Intro
Basic Git Intro
 
Git workflows presentation
Git workflows presentationGit workflows presentation
Git workflows presentation
 
Git and Github
Git and GithubGit and Github
Git and Github
 
Git for beginners
Git for beginnersGit for beginners
Git for beginners
 
Git+github
Git+githubGit+github
Git+github
 
Introduction to Git and Github
Introduction to Git and GithubIntroduction to Git and Github
Introduction to Git and Github
 
Git Branching Model
Git Branching ModelGit Branching Model
Git Branching Model
 
Learning git
Learning gitLearning git
Learning git
 
Git and Github Session
Git and Github SessionGit and Github Session
Git and Github Session
 
Git basics
Git basicsGit basics
Git basics
 
Git and Github slides.pdf
Git and Github slides.pdfGit and Github slides.pdf
Git and Github slides.pdf
 

Similaire à Git flow na prática

Controle de versionamento com Git
Controle de versionamento com GitControle de versionamento com Git
Controle de versionamento com Git
Raphael Cruzeiro
 
Controle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básicoControle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básico
Fabricio Nogueira
 

Similaire à Git flow na prática (20)

Introdução ao Git
Introdução ao GitIntrodução ao Git
Introdução ao Git
 
Controle de versão e colaboração com Git
Controle de versão e colaboração com GitControle de versão e colaboração com Git
Controle de versão e colaboração com Git
 
Desmistificando a ferramenta git
Desmistificando a ferramenta gitDesmistificando a ferramenta git
Desmistificando a ferramenta git
 
Introdução ao git
Introdução ao gitIntrodução ao git
Introdução ao git
 
Sendo um GIT master
Sendo um GIT masterSendo um GIT master
Sendo um GIT master
 
Controle de versionamento com Git
Controle de versionamento com GitControle de versionamento com Git
Controle de versionamento com Git
 
Controlando Projetos com Netbeans e Subversion
Controlando Projetos com Netbeans e SubversionControlando Projetos com Netbeans e Subversion
Controlando Projetos com Netbeans e Subversion
 
Setup.docx
Setup.docxSetup.docx
Setup.docx
 
Intervalo técnico Git/SVN
Intervalo técnico Git/SVNIntervalo técnico Git/SVN
Intervalo técnico Git/SVN
 
Git Rápido e Fácil
Git Rápido e FácilGit Rápido e Fácil
Git Rápido e Fácil
 
Rogue Snail Talk - Usando Git na Game Jam - WGJ
Rogue Snail Talk - Usando Git na Game Jam - WGJRogue Snail Talk - Usando Git na Game Jam - WGJ
Rogue Snail Talk - Usando Git na Game Jam - WGJ
 
Git - Fluxo do Versionamento adotado
Git - Fluxo do Versionamento adotadoGit - Fluxo do Versionamento adotado
Git - Fluxo do Versionamento adotado
 
Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021
 
Rogue Snail Talk - Usando Git na Game Jam - WGJ
Rogue Snail Talk - Usando Git na Game Jam - WGJRogue Snail Talk - Usando Git na Game Jam - WGJ
Rogue Snail Talk - Usando Git na Game Jam - WGJ
 
TDC São Paulo 2019 - Vapor
TDC São Paulo 2019 - VaporTDC São Paulo 2019 - Vapor
TDC São Paulo 2019 - Vapor
 
Controle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básicoControle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básico
 
Git workshop
Git workshopGit workshop
Git workshop
 
Git e Github
Git e GithubGit e Github
Git e Github
 
Minicurso GIT PET Computação
Minicurso GIT PET ComputaçãoMinicurso GIT PET Computação
Minicurso GIT PET Computação
 
Seis passos para colocar um projeto local em um servidor próprio
Seis passos para colocar um projeto local em um servidor próprioSeis passos para colocar um projeto local em um servidor próprio
Seis passos para colocar um projeto local em um servidor próprio
 

Dernier

Dernier (6)

ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 

Git flow na prática

  • 1. git-flow na prática! Viagem ao mundo git-flow! 1
  • 2. Apresentação ● Graduado em Análise de Sistemas ● Pós-Graduação em Desenvolvimento Mobile ● Analista Desenvolvedor de Sistemas de Informação Prefeitura de Fortaleza marcelosantosadm@gmail.com https://www.linkedin.com/in/marcelotdsantos 2
  • 3. git-flow O git-flow é um conjunto de extensões para o git que provê operações de alto-nível para repositórios usando o modelo de branches do Vincent Driessen. 3 https://danielkummer.github.io/git-flow-cheatsheet Quick Start O foco é o uso do git-flow, então presume-se que temos um projeto com o git-flow habilitado e pronto para uso, seguirei as configurações padrão do git-flow: feature, hotfix etc
  • 4. git-flow no dia-a-dia (nova feature) Por meio do terminal, digite: $ git flow feature start adicionar-menu-de-acesso-ao-sistema Com isso estamos criando feature branch com nome adicionar-menu-de-acesso-ao-sistema para realizar a implementação necessária da feature. Após isso teremos um novo branch, ao rodar o comando abaixo podemos conferir: $ git branch 4
  • 5. Realize as implementações da feature Verifique o status com a lista de modificações: $ git status 5 Vamos adicionar tudo ao stage: $ git add .
  • 6. Vamos fazer o commit das alterações: $ git commit -m “Informe uma mensagem sobre a implementação” 6 Visualizando o log de commits: $ git log
  • 7. Vamos finalizar a nossa feature usando git-flow $ git flow feature finish adicionar-menu-de-acesso-ao-sistema 7 Verifique o feedback dos comandos realizado, são úteis para aprendizado e solução de problemas do dia-a-dia. Ao ler as mensagens do git você ficará ciente do que de fato está sendo realizado a cada comando. - branch de feature foi mergiado no branch develop - branch de feature foi removido do repositório local e remoto (estava publicado no remoto) - seu branch atual agora é o develop
  • 8. Vamos enviar nossas implementações ao GitLab :-), no caso de uma feature, após finalizada enviamos as modificações para para o branch develop para que a feature seja homologada. $ git push origin develop 8 Após envio para homologação, o webhook (quando configurado) baixará as modificações no ambiente de homologação do projeto: http://hom.NOME_DO_PROJETO.domain.ce.gov.br
  • 9. git-flow no dia-a-dia (fazendo release) Por meio do terminal, vamos criar uma release usando git-flow: $ git flow release start v1.0.0 Com isso estamos criando um release branch com nome v1.0.0 para preparar a publicação da release. Um branch de hotfix é criado a partir do develop, ou seja, versão que está em homologação devidamente testado, quando finalizada, a release será mergiada no master, realizando o deploy para produção. $ git branch 9
  • 10. Finalizando e publicando a release Por meio do terminal, vamos finalizar a release com git-flow: $ git flow release finish v1.0.0 Com isso estamos finalizando a release v1.0.0 e vamos salvar as mensagens de commit sugeridas pelo git-flow (serão abertas automaticamente, basta salvar), as features implementadas e homologadas no develop serão mergiadas no master. Após isso atualizamos o master, ou seja, publicamos em produção: $ git push origin develop //publicando release em homologação $ git push origin master //publicando release em produção 10Lembre-se de atualizar o CHANGELOG.md
  • 11. git-flow no dia-a-dia (vish surgiu um bug) Por meio do terminal, vamos criar um hotfix usando git-flow: $ git flow hotfix start bug-text-update Com isso estamos criando um hotfix branch com nome bug-text-update para realizar a implementação para correção do bug. Um branch de hotfix é criado a partir do master, ou seja, versão que está em produção, quando finalizada, a correção será mergiada em ambos, master e develop. $ git branch 11
  • 12. finalizando o hotfix Por meio do terminal, vamos preparar o commit: $ git add . $ git commit -m “correção textual” Por meio do terminal, vamos finalizar o hotfix com git-flow: $ git flow hotfix finish bug-text-update Com isso estamos finalizando o hotfix e vamos salvar as mensagens de commit sugeridas pelo git-flow (serão abertas automaticamente, basta editar e/ou salvar), a implementação da correção do bug será mergiada em ambos, master e develop. Após isso atualizamos os remotos: $ git push origin develop //atualizando ambiente de homologação $ git push origin master //publicando a correção em produção 12Lembre-se de atualizar o CHANGELOG.md
  • 13. Obrigado à todos! 13 ● Referências https://danielkummer.github.io/git-flow-cheatsheet https://git-scm.com/