際際滷

際際滷Share a Scribd company logo
#DOH18
2
B1- Git  Gitflow  Pull requests in
Devops Focused Teams
Ricci Gian Maria
@alkampfer
alkampfer@nablasoft.com
#DOH18 3
Organizer & sponsors
GetLatestVersion.it
#DOH18 4
Ma la qualit?
Ren辿 Ferretti  Regista
#DOH18 5
Perch竪 Git?
E se continuassi
ad usare un source
control
centralizzato?
#DOH18 6
Perch竪 Git?
 giargiana, mi
sbagli le basi???
#DOH18 7
Perch辿 la qualit beneficia di Git
Controllo completo della storia del codice sorgente
Possibilit di generare una storia lineare business / feature oriented
Lavoro in isolamento con le branch locali

Verifica del codice con Pull Request
#DOH18 8
Git e lintegrazione continua
#DOH18 9
GitFlow, GitVersion ed il semantic versioning
1.0.0
1.0.1-Beta1
1.1.0-Beta1
1.1.0-dev1
1.1.0-feat1
10
Build and Gitversion
#DOH18 11
Trunk Based Development
Trunk based development VS branch for feature
Ho bisogno di Git anche con un trunk based development?
 vero che in un Trunk Based Development non si usano le branch?
#DOH18 12
Long lived and Short lived branches
Anche nella Trunk Based Development si utilizzano branches
Il segreto 竪 usare Short-Lived branches
Non vivono pi湛 di una iterazione (SCRUM)
Coinvolge un numero ridotto di persone
Non sono particolarmente complesse.
Talvolta 竪 comunque necessario utilizzare branch long lived
Refactoring di framework o interventi su parti core del codice
Aggiornamenti di librerie pervasive (C# MongoDb 1 -> 2)
#DOH18 13
Il signor produzione
Io non sono
quello che apre
larmadio, io
sono quello che
indica larmadio
Tutti hanno
qualche
scheletro
nellarmadio
#DOH18 14
Perch辿 gli scheletri sono nellarmadio
Fretta
Disattenzione
Problema
compreso male
Eccessiva
pressione
Ansia da rilascio
Area di lavoro poco
conosciuta
#DOH18 15
Pull request  cosa non 竪
Una modalit di frustrare gli sviluppatori bloccando la trunk
Loccasione di attaccare come gli altri scrivono codice
La volont di imporre procedure perch竪 manca fiducia
Non 竪 un momento negativo
#DOH18 16
Pull request  cosa 竪
Controllo accurato del team sul cosa entra nella codebase
Loccasione di propagare uniformit nella scrittura del codice
La possibilit di usufruire di verifiche automatiche sulla qualit del
codice.
17
Pull requests + SonarQube
#DOH18
THANK YOU!

More Related Content

Similar to Git gitflow pull requests in devops focused teams (20)

GIT commands version control system and collaboration
GIT commands version control system and collaborationGIT commands version control system and collaboration
GIT commands version control system and collaboration
satmania
Git branching model
Git branching modelGit branching model
Git branching model
Giuseppe Morelli
Sviluppare con Portofino
Sviluppare con PortofinoSviluppare con Portofino
Sviluppare con Portofino
NaLUG
Git e GitHub
Git e GitHubGit e GitHub
Git e GitHub
sscalabrino
GAE python GDG Milano - L01
GAE python GDG Milano - L01GAE python GDG Milano - L01
GAE python GDG Milano - L01
Paolo Dadda
POLARION by SIEMENS & GITLAB, una coppia vincente
POLARION by SIEMENS & GITLAB, una coppia vincentePOLARION by SIEMENS & GITLAB, una coppia vincente
POLARION by SIEMENS & GITLAB, una coppia vincente
Emerasoft, solutions to collaborate
Xamarin DevOps
Xamarin DevOpsXamarin DevOps
Xamarin DevOps
Nicol嘆 Carandini
Come i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature TeamsCome i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature Teams
Giulio Roggero
03 bigblue
03 bigblue03 bigblue
03 bigblue
Andrea Colombetti
Canary Release Strategy con telemetria per dormire sonni tranquilli
Canary Release Strategy con telemetria per dormire sonni tranquilliCanary Release Strategy con telemetria per dormire sonni tranquilli
Canary Release Strategy con telemetria per dormire sonni tranquilli
Michele Ferracin
Streaming in Java e Flex con Red5
Streaming in Java e Flex con Red5Streaming in Java e Flex con Red5
Streaming in Java e Flex con Red5
Marcello Teodori
Seo Audit Demo
Seo Audit DemoSeo Audit Demo
Seo Audit Demo
Giovanni Sacheli
Introduzione a git
Introduzione a gitIntroduzione a git
Introduzione a git
rpanfili
SMAU MILANO 2023 | IA Generativa per aziende - come addestrare i modelli ling...
SMAU MILANO 2023 | IA Generativa per aziende - come addestrare i modelli ling...SMAU MILANO 2023 | IA Generativa per aziende - come addestrare i modelli ling...
SMAU MILANO 2023 | IA Generativa per aziende - come addestrare i modelli ling...
SMAU
Php Day 2009:Un Salto Nel Buio
Php Day 2009:Un Salto Nel BuioPhp Day 2009:Un Salto Nel Buio
Php Day 2009:Un Salto Nel Buio
pietrobr
Introduzione a Git e GitLab
Introduzione a Git e GitLabIntroduzione a Git e GitLab
Introduzione a Git e GitLab
Yefry Figueroa
L'automazione dei processi sulle interfacce SAP
L'automazione dei processi sulle interfacce SAPL'automazione dei processi sulle interfacce SAP
L'automazione dei processi sulle interfacce SAP
Cristina Vidu
Php On Windows For Ph Pday 2008
Php On Windows For Ph Pday 2008Php On Windows For Ph Pday 2008
Php On Windows For Ph Pday 2008
pietrobr
Emerasoft Git quickstart
Emerasoft Git quickstartEmerasoft Git quickstart
Emerasoft Git quickstart
Emerasoft, solutions to collaborate
Frontend Development with Blazor
Frontend Development with BlazorFrontend Development with Blazor
Frontend Development with Blazor
Michele Aponte
GIT commands version control system and collaboration
GIT commands version control system and collaborationGIT commands version control system and collaboration
GIT commands version control system and collaboration
satmania
Sviluppare con Portofino
Sviluppare con PortofinoSviluppare con Portofino
Sviluppare con Portofino
NaLUG
GAE python GDG Milano - L01
GAE python GDG Milano - L01GAE python GDG Milano - L01
GAE python GDG Milano - L01
Paolo Dadda
Come i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature TeamsCome i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature Teams
Giulio Roggero
Canary Release Strategy con telemetria per dormire sonni tranquilli
Canary Release Strategy con telemetria per dormire sonni tranquilliCanary Release Strategy con telemetria per dormire sonni tranquilli
Canary Release Strategy con telemetria per dormire sonni tranquilli
Michele Ferracin
Streaming in Java e Flex con Red5
Streaming in Java e Flex con Red5Streaming in Java e Flex con Red5
Streaming in Java e Flex con Red5
Marcello Teodori
Introduzione a git
Introduzione a gitIntroduzione a git
Introduzione a git
rpanfili
SMAU MILANO 2023 | IA Generativa per aziende - come addestrare i modelli ling...
SMAU MILANO 2023 | IA Generativa per aziende - come addestrare i modelli ling...SMAU MILANO 2023 | IA Generativa per aziende - come addestrare i modelli ling...
SMAU MILANO 2023 | IA Generativa per aziende - come addestrare i modelli ling...
SMAU
Php Day 2009:Un Salto Nel Buio
Php Day 2009:Un Salto Nel BuioPhp Day 2009:Un Salto Nel Buio
Php Day 2009:Un Salto Nel Buio
pietrobr
Introduzione a Git e GitLab
Introduzione a Git e GitLabIntroduzione a Git e GitLab
Introduzione a Git e GitLab
Yefry Figueroa
L'automazione dei processi sulle interfacce SAP
L'automazione dei processi sulle interfacce SAPL'automazione dei processi sulle interfacce SAP
L'automazione dei processi sulle interfacce SAP
Cristina Vidu
Php On Windows For Ph Pday 2008
Php On Windows For Ph Pday 2008Php On Windows For Ph Pday 2008
Php On Windows For Ph Pday 2008
pietrobr
Frontend Development with Blazor
Frontend Development with BlazorFrontend Development with Blazor
Frontend Development with Blazor
Michele Aponte

More from Gian Maria Ricci (20)

Se non sviluppo codice non sto lavorando
Se non sviluppo codice non sto lavorandoSe non sviluppo codice non sto lavorando
Se non sviluppo codice non sto lavorando
Gian Maria Ricci
Gestire la qualit del codice con Visual Studio, SonarQube ed Azure Devops
Gestire la qualit del codice con Visual Studio, SonarQube ed Azure DevopsGestire la qualit del codice con Visual Studio, SonarQube ed Azure Devops
Gestire la qualit del codice con Visual Studio, SonarQube ed Azure Devops
Gian Maria Ricci
Migrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a GitMigrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a Git
Gian Maria Ricci
Real World Build + Release automation in Azure DevOps
Real World Build + Release automation in Azure DevOpsReal World Build + Release automation in Azure DevOps
Real World Build + Release automation in Azure DevOps
Gian Maria Ricci
Gestire i rilasci automatici con azure devops
Gestire i rilasci automatici con azure devopsGestire i rilasci automatici con azure devops
Gestire i rilasci automatici con azure devops
Gian Maria Ricci
Build and release in code with azure devops pipelines
Build and release in code with azure devops pipelinesBuild and release in code with azure devops pipelines
Build and release in code with azure devops pipelines
Gian Maria Ricci
Azure Pipeline in salsa yaml
Azure Pipeline in salsa yamlAzure Pipeline in salsa yaml
Azure Pipeline in salsa yaml
Gian Maria Ricci
Distribute your code with NUget and build vNext
Distribute your code with NUget and build vNextDistribute your code with NUget and build vNext
Distribute your code with NUget and build vNext
Gian Maria Ricci
Manage your environment with DSC
Manage your environment with DSCManage your environment with DSC
Manage your environment with DSC
Gian Maria Ricci
Introduction to Application insights
Introduction to Application insightsIntroduction to Application insights
Introduction to Application insights
Gian Maria Ricci
Git branching model
Git branching modelGit branching model
Git branching model
Gian Maria Ricci
Deploy applications with TFS Build
Deploy applications with TFS BuildDeploy applications with TFS Build
Deploy applications with TFS Build
Gian Maria Ricci
TFS - Quale source control
TFS - Quale source controlTFS - Quale source control
TFS - Quale source control
Gian Maria Ricci
Branch model in Git
Branch model in GitBranch model in Git
Branch model in Git
Gian Maria Ricci
Introduction to Visual Studio Online
Introduction to Visual Studio OnlineIntroduction to Visual Studio Online
Introduction to Visual Studio Online
Gian Maria Ricci
Git si o Git No
Git si o Git NoGit si o Git No
Git si o Git No
Gian Maria Ricci
Testing
TestingTesting
Testing
Gian Maria Ricci
Come Organizzare il proprio Team Project
Come Organizzare il proprio Team ProjectCome Organizzare il proprio Team Project
Come Organizzare il proprio Team Project
Gian Maria Ricci
Git Perch竪 Usarlo
Git Perch竪 UsarloGit Perch竪 Usarlo
Git Perch竪 Usarlo
Gian Maria Ricci
Automatically deployment to Azure Web Sites
Automatically deployment to Azure Web SitesAutomatically deployment to Azure Web Sites
Automatically deployment to Azure Web Sites
Gian Maria Ricci
Se non sviluppo codice non sto lavorando
Se non sviluppo codice non sto lavorandoSe non sviluppo codice non sto lavorando
Se non sviluppo codice non sto lavorando
Gian Maria Ricci
Gestire la qualit del codice con Visual Studio, SonarQube ed Azure Devops
Gestire la qualit del codice con Visual Studio, SonarQube ed Azure DevopsGestire la qualit del codice con Visual Studio, SonarQube ed Azure Devops
Gestire la qualit del codice con Visual Studio, SonarQube ed Azure Devops
Gian Maria Ricci
Migrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a GitMigrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a Git
Gian Maria Ricci
Real World Build + Release automation in Azure DevOps
Real World Build + Release automation in Azure DevOpsReal World Build + Release automation in Azure DevOps
Real World Build + Release automation in Azure DevOps
Gian Maria Ricci
Gestire i rilasci automatici con azure devops
Gestire i rilasci automatici con azure devopsGestire i rilasci automatici con azure devops
Gestire i rilasci automatici con azure devops
Gian Maria Ricci
Build and release in code with azure devops pipelines
Build and release in code with azure devops pipelinesBuild and release in code with azure devops pipelines
Build and release in code with azure devops pipelines
Gian Maria Ricci
Azure Pipeline in salsa yaml
Azure Pipeline in salsa yamlAzure Pipeline in salsa yaml
Azure Pipeline in salsa yaml
Gian Maria Ricci
Distribute your code with NUget and build vNext
Distribute your code with NUget and build vNextDistribute your code with NUget and build vNext
Distribute your code with NUget and build vNext
Gian Maria Ricci
Manage your environment with DSC
Manage your environment with DSCManage your environment with DSC
Manage your environment with DSC
Gian Maria Ricci
Introduction to Application insights
Introduction to Application insightsIntroduction to Application insights
Introduction to Application insights
Gian Maria Ricci
Deploy applications with TFS Build
Deploy applications with TFS BuildDeploy applications with TFS Build
Deploy applications with TFS Build
Gian Maria Ricci
TFS - Quale source control
TFS - Quale source controlTFS - Quale source control
TFS - Quale source control
Gian Maria Ricci
Introduction to Visual Studio Online
Introduction to Visual Studio OnlineIntroduction to Visual Studio Online
Introduction to Visual Studio Online
Gian Maria Ricci
Come Organizzare il proprio Team Project
Come Organizzare il proprio Team ProjectCome Organizzare il proprio Team Project
Come Organizzare il proprio Team Project
Gian Maria Ricci
Automatically deployment to Azure Web Sites
Automatically deployment to Azure Web SitesAutomatically deployment to Azure Web Sites
Automatically deployment to Azure Web Sites
Gian Maria Ricci

Git gitflow pull requests in devops focused teams

  • 2. 2 B1- Git Gitflow Pull requests in Devops Focused Teams Ricci Gian Maria @alkampfer alkampfer@nablasoft.com
  • 3. #DOH18 3 Organizer & sponsors GetLatestVersion.it
  • 4. #DOH18 4 Ma la qualit? Ren辿 Ferretti Regista
  • 5. #DOH18 5 Perch竪 Git? E se continuassi ad usare un source control centralizzato?
  • 6. #DOH18 6 Perch竪 Git? giargiana, mi sbagli le basi???
  • 7. #DOH18 7 Perch辿 la qualit beneficia di Git Controllo completo della storia del codice sorgente Possibilit di generare una storia lineare business / feature oriented Lavoro in isolamento con le branch locali Verifica del codice con Pull Request
  • 8. #DOH18 8 Git e lintegrazione continua
  • 9. #DOH18 9 GitFlow, GitVersion ed il semantic versioning 1.0.0 1.0.1-Beta1 1.1.0-Beta1 1.1.0-dev1 1.1.0-feat1
  • 11. #DOH18 11 Trunk Based Development Trunk based development VS branch for feature Ho bisogno di Git anche con un trunk based development? vero che in un Trunk Based Development non si usano le branch?
  • 12. #DOH18 12 Long lived and Short lived branches Anche nella Trunk Based Development si utilizzano branches Il segreto 竪 usare Short-Lived branches Non vivono pi湛 di una iterazione (SCRUM) Coinvolge un numero ridotto di persone Non sono particolarmente complesse. Talvolta 竪 comunque necessario utilizzare branch long lived Refactoring di framework o interventi su parti core del codice Aggiornamenti di librerie pervasive (C# MongoDb 1 -> 2)
  • 13. #DOH18 13 Il signor produzione Io non sono quello che apre larmadio, io sono quello che indica larmadio Tutti hanno qualche scheletro nellarmadio
  • 14. #DOH18 14 Perch辿 gli scheletri sono nellarmadio Fretta Disattenzione Problema compreso male Eccessiva pressione Ansia da rilascio Area di lavoro poco conosciuta
  • 15. #DOH18 15 Pull request cosa non 竪 Una modalit di frustrare gli sviluppatori bloccando la trunk Loccasione di attaccare come gli altri scrivono codice La volont di imporre procedure perch竪 manca fiducia Non 竪 un momento negativo
  • 16. #DOH18 16 Pull request cosa 竪 Controllo accurato del team sul cosa entra nella codebase Loccasione di propagare uniformit nella scrittura del codice La possibilit di usufruire di verifiche automatiche sulla qualit del codice.
  • 17. 17 Pull requests + SonarQube