SlideShare a Scribd company logo
Scaling Git for
Enterprise
DevOps
Eng Teong Cheah
Microsoft MVP for Developer Technologies
How to Structure Your Git Repo
Mono vs Multi Repos
Advantages
• Clear ownership
• Better scale
• Narrow clones
• Better developer testing
• Reduced code complexity
• Effective code reviews
• Sharing of common components
• Easy refactoring
Mono-repo - source
code is kept in a single
repository
Multiple-repo – each
project has its own
repository
Git Hooks
Git Hooks
Git hooks are scripts that Git executes before or after events such
as: commit, push, and receive.
Git hooks are built-in feature – no need to download anything. Git
hooks are run locally.
Git Hooks
These hook scripts are only limited by a developer’s imagination.
Some example hook scripts include:
- pre-commit: Check the commit message for spelling errors
- pre-receive: Enforce project coding standards
- post-commit: Email/SMS team members of a new commit
- post-receive: Push the code to production
Git Version
Git Version
Git Version is a tool to help you achieve Semantic Versioning on
your project.
Version sources
There are a number of sources Git Version can get its versions from,
they include:
- Tags
- Version numbers in branches
- Merge messages
- Track version of another branch
- GitVersion.yml file
Public Projects
Public Projects
An Azure DevOps Services public project provides support to share
code with others and to support continuous integration/continuous
deployment (CI/CD) of open source software.
Users aren’t required to sign in to gain read-only access to many of
the services.
Public versus private projects
Projects in Azure DevOps provide a repository for source code and
a place for a group of developers and teams to plan, tack progress,
and collaborate on building software solutions. One or more
projects can be defined within an organization in Azure DevOps.
Users that aren’t signed into the service have read-only access to
public projects on Azure DevOps. Private projects, on the other
hand, require users to be granted access to the projects and signed
in to access the services.
Supported services
Non-members of a public project have read-only access to a
limited access to a limited set of services, specifically:
- Browse the code base, download code, view commits, branches,
and pull requests
- View and filter work items
- View a project page or dashboard
- View the project Wiki
- Perform semantic search of the code or work items
Demo: Azure Repos Collaborating with Pull
Requests
References
docs.microsoft.com

More Related Content

PDF
2013 Perforce Collaboration Tour - Git Fusion
PPTX
Introduction to KubeSphere and its open source ecosystem
PPTX
Devops
PPTX
The Swagger Format becomes the Open API Specification: Standardizing descript...
PPTX
Open Source Licensing: Types, Strategies and Compliance
PPTX
All Around Azure: DevOps with GitHub - Managing the Flow of Work
PDF
JBoss Enterprise Update - London JBUG May 2013
PPTX
Github copilot
2013 Perforce Collaboration Tour - Git Fusion
Introduction to KubeSphere and its open source ecosystem
Devops
The Swagger Format becomes the Open API Specification: Standardizing descript...
Open Source Licensing: Types, Strategies and Compliance
All Around Azure: DevOps with GitHub - Managing the Flow of Work
JBoss Enterprise Update - London JBUG May 2013
Github copilot

What's hot (20)

PDF
Managing the Complexity of Microservices Deployments
PDF
Kubernetes for the Spring Developer
PDF
Analyse de la composition logicielle à l’aide d’outils open source
PDF
Introduction to Jenkins X - a beginner's guide
PDF
OpenHW TV S2 E04: Software Task Group Project Updates
PPTX
Nextcloud Android App Development Process Insights
PDF
Meetup Devops-Geneva-19.10.2019
PPTX
South East Dreamin 2019
PPTX
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
PDF
GitLab Commit: Enhance your Compliance with Policy-Based CI/CD
PDF
[Perforce] Git Fusion
PDF
Continuous Delivery on Kubernetes Using Spinnaker
PDF
TDD for Microservices
PPTX
CIP Developing Curator Tool Wizards
PDF
What's New In Entando 6 (And Why Your Developers Will Love It)
PDF
INTEGRATING DIFFERENT IDE’S WITH A COMMON SET OF DEVELOPER SERVICES WITH A C...
PDF
Microservices pattern language (microxchg microxchg2016)
PPTX
Jelastic Docker Orchestrator
PDF
Semantic versioning and microservices in GO
PDF
How we can do Multi-Tenancy on Kubernetes
Managing the Complexity of Microservices Deployments
Kubernetes for the Spring Developer
Analyse de la composition logicielle à l’aide d’outils open source
Introduction to Jenkins X - a beginner's guide
OpenHW TV S2 E04: Software Task Group Project Updates
Nextcloud Android App Development Process Insights
Meetup Devops-Geneva-19.10.2019
South East Dreamin 2019
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
GitLab Commit: Enhance your Compliance with Policy-Based CI/CD
[Perforce] Git Fusion
Continuous Delivery on Kubernetes Using Spinnaker
TDD for Microservices
CIP Developing Curator Tool Wizards
What's New In Entando 6 (And Why Your Developers Will Love It)
INTEGRATING DIFFERENT IDE’S WITH A COMMON SET OF DEVELOPER SERVICES WITH A C...
Microservices pattern language (microxchg microxchg2016)
Jelastic Docker Orchestrator
Semantic versioning and microservices in GO
How we can do Multi-Tenancy on Kubernetes
Ad

Similar to Scaling Git for Enterprise DevOps (20)

PDF
DevOps_1698587929.pdf cours ciCd automatique
PPTX
Continuous Integration
PDF
DevOps Service | Mindtree
PDF
GitHub for partners
PDF
Git tech
PPTX
Github
PPTX
Webinar on "DevOps LifeCycle and SCM using common Git commands for version co...
PPTX
Git and Gerrit Code Review - Tech Talk - 2010_09_23
PDF
Intro to DevOps 4 undergraduates
PDF
DevOps & DevEx
PDF
Optimize Your Enterprise Git Webinar
PPT
5-Must-Have-Tools-for-.NET-Application-Development-Services-pptx-.ppt
PPTX
Guidelines for Working with Contract Developers in Evergreen
PPTX
Perforce Innovations Showcase 
PDF
What Is GitHub.pdf in united state of amarica
PPTX
Git and GitHub.pptx
PPTX
the Version Control systemlocalized.pptx
PDF
PHPFrameworkDay 2020 - Different software evolutions from Start till Release ...
PDF
"Different software evolutions from Start till Release in PHP product" Oleksa...
PDF
Increase the Velocity of Your Software Releases Using GitHub and DeployHub
DevOps_1698587929.pdf cours ciCd automatique
Continuous Integration
DevOps Service | Mindtree
GitHub for partners
Git tech
Github
Webinar on "DevOps LifeCycle and SCM using common Git commands for version co...
Git and Gerrit Code Review - Tech Talk - 2010_09_23
Intro to DevOps 4 undergraduates
DevOps & DevEx
Optimize Your Enterprise Git Webinar
5-Must-Have-Tools-for-.NET-Application-Development-Services-pptx-.ppt
Guidelines for Working with Contract Developers in Evergreen
Perforce Innovations Showcase 
What Is GitHub.pdf in united state of amarica
Git and GitHub.pptx
the Version Control systemlocalized.pptx
PHPFrameworkDay 2020 - Different software evolutions from Start till Release ...
"Different software evolutions from Start till Release in PHP product" Oleksa...
Increase the Velocity of Your Software Releases Using GitHub and DeployHub
Ad

More from Eng Teong Cheah (20)

PDF
Modern Cross-Platform Apps with .NET MAUI
PDF
Efficiently Removing Duplicates from a Sorted Array
PDF
Monitoring Models
PDF
Responsible Machine Learning
PDF
Training Optimal Models
PDF
Deploying Models
PDF
Machine Learning Workflows
PDF
Working with Compute
PDF
Working with Data
PDF
Experiments & TrainingModels
PDF
Automated Machine Learning
PDF
Getting Started with Azure Machine Learning
PDF
Hacking Containers - Container Storage
PDF
Hacking Containers - Looking at Cgroups
PDF
Hacking Containers - Linux Containers
PDF
Data Security - Storage Security
PDF
Application Security- App security
PDF
Application Security - Key Vault
PDF
Compute Security - Container Security
PDF
Compute Security - Host Security
Modern Cross-Platform Apps with .NET MAUI
Efficiently Removing Duplicates from a Sorted Array
Monitoring Models
Responsible Machine Learning
Training Optimal Models
Deploying Models
Machine Learning Workflows
Working with Compute
Working with Data
Experiments & TrainingModels
Automated Machine Learning
Getting Started with Azure Machine Learning
Hacking Containers - Container Storage
Hacking Containers - Looking at Cgroups
Hacking Containers - Linux Containers
Data Security - Storage Security
Application Security- App security
Application Security - Key Vault
Compute Security - Container Security
Compute Security - Host Security

Recently uploaded (20)

PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Machine learning based COVID-19 study performance prediction
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
A comparative analysis of optical character recognition models for extracting...
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
The AUB Centre for AI in Media Proposal.docx
NewMind AI Weekly Chronicles - August'25-Week II
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Reach Out and Touch Someone: Haptics and Empathic Computing
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
“AI and Expert System Decision Support & Business Intelligence Systems”
sap open course for s4hana steps from ECC to s4
Machine learning based COVID-19 study performance prediction
20250228 LYD VKU AI Blended-Learning.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
The Rise and Fall of 3GPP – Time for a Sabbatical?
Per capita expenditure prediction using model stacking based on satellite ima...
Review of recent advances in non-invasive hemoglobin estimation
Dropbox Q2 2025 Financial Results & Investor Presentation
Agricultural_Statistics_at_a_Glance_2022_0.pdf
A comparative analysis of optical character recognition models for extracting...

Scaling Git for Enterprise DevOps

  • 1. Scaling Git for Enterprise DevOps Eng Teong Cheah Microsoft MVP for Developer Technologies
  • 2. How to Structure Your Git Repo
  • 3. Mono vs Multi Repos Advantages • Clear ownership • Better scale • Narrow clones • Better developer testing • Reduced code complexity • Effective code reviews • Sharing of common components • Easy refactoring Mono-repo - source code is kept in a single repository Multiple-repo – each project has its own repository
  • 5. Git Hooks Git hooks are scripts that Git executes before or after events such as: commit, push, and receive. Git hooks are built-in feature – no need to download anything. Git hooks are run locally.
  • 6. Git Hooks These hook scripts are only limited by a developer’s imagination. Some example hook scripts include: - pre-commit: Check the commit message for spelling errors - pre-receive: Enforce project coding standards - post-commit: Email/SMS team members of a new commit - post-receive: Push the code to production
  • 8. Git Version Git Version is a tool to help you achieve Semantic Versioning on your project.
  • 9. Version sources There are a number of sources Git Version can get its versions from, they include: - Tags - Version numbers in branches - Merge messages - Track version of another branch - GitVersion.yml file
  • 11. Public Projects An Azure DevOps Services public project provides support to share code with others and to support continuous integration/continuous deployment (CI/CD) of open source software. Users aren’t required to sign in to gain read-only access to many of the services.
  • 12. Public versus private projects Projects in Azure DevOps provide a repository for source code and a place for a group of developers and teams to plan, tack progress, and collaborate on building software solutions. One or more projects can be defined within an organization in Azure DevOps. Users that aren’t signed into the service have read-only access to public projects on Azure DevOps. Private projects, on the other hand, require users to be granted access to the projects and signed in to access the services.
  • 13. Supported services Non-members of a public project have read-only access to a limited access to a limited set of services, specifically: - Browse the code base, download code, view commits, branches, and pull requests - View and filter work items - View a project page or dashboard - View the project Wiki - Perform semantic search of the code or work items
  • 14. Demo: Azure Repos Collaborating with Pull Requests