Submit Search
Upload
Effective version control
•
0 likes
•
522 views
D
devObjective
Follow
Effective version control
Read less
Read more
Technology
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 15
Download now
Download to read offline
Recommended
Dev ops
Dev ops
Patrick Fogarty
Deploy Multinode GitLab Runner in openSUSE 15.1 Instances with Ansible Automa...
Deploy Multinode GitLab Runner in openSUSE 15.1 Instances with Ansible Automa...
Samsul Ma'arif
Controlling Component Chaos with NuGet and Versioning
Controlling Component Chaos with NuGet and Versioning
Perforce
Git Tutorial
Git Tutorial
Moshe Kaplan
Laravel workshop
Laravel workshop
Jasper Frumau
TDC 2016 SP - Continuous Delivery para aplicações Java com ferramentas open-s...
TDC 2016 SP - Continuous Delivery para aplicações Java com ferramentas open-s...
Stefan Teixeira
C#: Past, Present and Future
C#: Past, Present and Future
Rodolfo Finochietti
Azure Functions
Azure Functions
Rodolfo Finochietti
Recommended
Dev ops
Dev ops
Patrick Fogarty
Deploy Multinode GitLab Runner in openSUSE 15.1 Instances with Ansible Automa...
Deploy Multinode GitLab Runner in openSUSE 15.1 Instances with Ansible Automa...
Samsul Ma'arif
Controlling Component Chaos with NuGet and Versioning
Controlling Component Chaos with NuGet and Versioning
Perforce
Git Tutorial
Git Tutorial
Moshe Kaplan
Laravel workshop
Laravel workshop
Jasper Frumau
TDC 2016 SP - Continuous Delivery para aplicações Java com ferramentas open-s...
TDC 2016 SP - Continuous Delivery para aplicações Java com ferramentas open-s...
Stefan Teixeira
C#: Past, Present and Future
C#: Past, Present and Future
Rodolfo Finochietti
Azure Functions
Azure Functions
Rodolfo Finochietti
Git basics
Git basics
GHARSALLAH Mohamed
Git essentials
Git essentials
Otto Kekäläinen
Introduction to Gitlab
Introduction to Gitlab
Julien Pivotto
Incremental steps -- Lighting Talk
Incremental steps -- Lighting Talk
James Flowers
Scaling up development of a modular code base
Scaling up development of a modular code base
Robert Munteanu
Continuous Integration at Mollie
Continuous Integration at Mollie
willemstuursma
Embracing Continuous Integration
Embracing Continuous Integration
IT MegaMeet
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
Kir Chou
Porting Projects to .NET 5
Porting Projects to .NET 5
Immo Landwerth
It's a Breeze to develop Airflow (Cloud Native Warsaw)
It's a Breeze to develop Airflow (Cloud Native Warsaw)
Jarek Potiuk
Continuous Integration/Deployment with Gitlab CI
Continuous Integration/Deployment with Gitlab CI
David Hahn
Supercharging CI/CD with GitLab and Rancher - June 2017 Online Meetup
Supercharging CI/CD with GitLab and Rancher - June 2017 Online Meetup
Shannon Williams
Building gRPC services
Building gRPC services
Robert Robinson
Its easy! contributing to open source - Devnexus 2020
Its easy! contributing to open source - Devnexus 2020
César Hernández
Webinar - Continuous Integration with GitLab
Webinar - Continuous Integration with GitLab
OlinData
Let your REST API talk
Let your REST API talk
hrabur
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPrem
Kris Buytaert
Automate CI/CD with Rancher
Automate CI/CD with Rancher
Nick Thomas
Git in Continuous Deployment
Git in Continuous Deployment
Brett Child
Version Control History and Git Basics
Version Control History and Git Basics
Sreedath N S
Passing the Joel Test in the PHP World (phpbnl10)
Passing the Joel Test in the PHP World (phpbnl10)
Lorna Mitchell
From Test to Live with Rex
From Test to Live with Rex
Jan Gehring
More Related Content
What's hot
Git basics
Git basics
GHARSALLAH Mohamed
Git essentials
Git essentials
Otto Kekäläinen
Introduction to Gitlab
Introduction to Gitlab
Julien Pivotto
Incremental steps -- Lighting Talk
Incremental steps -- Lighting Talk
James Flowers
Scaling up development of a modular code base
Scaling up development of a modular code base
Robert Munteanu
Continuous Integration at Mollie
Continuous Integration at Mollie
willemstuursma
Embracing Continuous Integration
Embracing Continuous Integration
IT MegaMeet
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
Kir Chou
Porting Projects to .NET 5
Porting Projects to .NET 5
Immo Landwerth
It's a Breeze to develop Airflow (Cloud Native Warsaw)
It's a Breeze to develop Airflow (Cloud Native Warsaw)
Jarek Potiuk
Continuous Integration/Deployment with Gitlab CI
Continuous Integration/Deployment with Gitlab CI
David Hahn
Supercharging CI/CD with GitLab and Rancher - June 2017 Online Meetup
Supercharging CI/CD with GitLab and Rancher - June 2017 Online Meetup
Shannon Williams
Building gRPC services
Building gRPC services
Robert Robinson
Its easy! contributing to open source - Devnexus 2020
Its easy! contributing to open source - Devnexus 2020
César Hernández
Webinar - Continuous Integration with GitLab
Webinar - Continuous Integration with GitLab
OlinData
Let your REST API talk
Let your REST API talk
hrabur
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPrem
Kris Buytaert
Automate CI/CD with Rancher
Automate CI/CD with Rancher
Nick Thomas
Git in Continuous Deployment
Git in Continuous Deployment
Brett Child
Version Control History and Git Basics
Version Control History and Git Basics
Sreedath N S
What's hot
(20)
Git basics
Git basics
Git essentials
Git essentials
Introduction to Gitlab
Introduction to Gitlab
Incremental steps -- Lighting Talk
Incremental steps -- Lighting Talk
Scaling up development of a modular code base
Scaling up development of a modular code base
Continuous Integration at Mollie
Continuous Integration at Mollie
Embracing Continuous Integration
Embracing Continuous Integration
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
Porting Projects to .NET 5
Porting Projects to .NET 5
It's a Breeze to develop Airflow (Cloud Native Warsaw)
It's a Breeze to develop Airflow (Cloud Native Warsaw)
Continuous Integration/Deployment with Gitlab CI
Continuous Integration/Deployment with Gitlab CI
Supercharging CI/CD with GitLab and Rancher - June 2017 Online Meetup
Supercharging CI/CD with GitLab and Rancher - June 2017 Online Meetup
Building gRPC services
Building gRPC services
Its easy! contributing to open source - Devnexus 2020
Its easy! contributing to open source - Devnexus 2020
Webinar - Continuous Integration with GitLab
Webinar - Continuous Integration with GitLab
Let your REST API talk
Let your REST API talk
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPrem
Automate CI/CD with Rancher
Automate CI/CD with Rancher
Git in Continuous Deployment
Git in Continuous Deployment
Version Control History and Git Basics
Version Control History and Git Basics
Similar to Effective version control
Passing the Joel Test in the PHP World (phpbnl10)
Passing the Joel Test in the PHP World (phpbnl10)
Lorna Mitchell
From Test to Live with Rex
From Test to Live with Rex
Jan Gehring
GeoServer Developers Workshop
GeoServer Developers Workshop
Jody Garnett
01 - Git vs SVN
01 - Git vs SVN
Edward Goikhman
Achieving Agility with Code Repositories
Achieving Agility with Code Repositories
Scrum User Group South Africa
An OpenShift Migration: From 3.9 to 4.5
An OpenShift Migration: From 3.9 to 4.5
Everett Toews
Continuous Development Pipeline
Continuous Development Pipeline
Izzet Mustafaiev
Production Ready WordPress #WPLDN
Production Ready WordPress #WPLDN
Edmund Turbin
Demystifying Gutenberg Blocks - Understanding the first steps to becoming a G...
Demystifying Gutenberg Blocks - Understanding the first steps to becoming a G...
Cory Webb
Introduction to git & WordPress
Introduction to git & WordPress
Josh Lee
Deploying software at Scale
Deploying software at Scale
Kris Buytaert
Dockerize magento 2 24.02.2016
Dockerize magento 2 24.02.2016
Andreas Pointner
Application Deployment at UC Riverside
Application Deployment at UC Riverside
Michael Kennedy
Taking Docker to Production: What You Need to Know and Decide
Taking Docker to Production: What You Need to Know and Decide
Bret Fisher
Taking Docker to Production: What You Need to Know and Decide
Taking Docker to Production: What You Need to Know and Decide
Docker, Inc.
Evolution of deploy.sh
Evolution of deploy.sh
Leonid Mamchenkov
Magento 2 Workflows
Magento 2 Workflows
Ryan Street
Go with the Flow - A Guide to a WordPress Workflow
Go with the Flow - A Guide to a WordPress Workflow
Ann Cascarano
My talk at LVEE 2016
My talk at LVEE 2016
Alex Chistyakov
Production Ready WordPress - WC Utrecht 2017
Production Ready WordPress - WC Utrecht 2017
Edmund Turbin
Similar to Effective version control
(20)
Passing the Joel Test in the PHP World (phpbnl10)
Passing the Joel Test in the PHP World (phpbnl10)
From Test to Live with Rex
From Test to Live with Rex
GeoServer Developers Workshop
GeoServer Developers Workshop
01 - Git vs SVN
01 - Git vs SVN
Achieving Agility with Code Repositories
Achieving Agility with Code Repositories
An OpenShift Migration: From 3.9 to 4.5
An OpenShift Migration: From 3.9 to 4.5
Continuous Development Pipeline
Continuous Development Pipeline
Production Ready WordPress #WPLDN
Production Ready WordPress #WPLDN
Demystifying Gutenberg Blocks - Understanding the first steps to becoming a G...
Demystifying Gutenberg Blocks - Understanding the first steps to becoming a G...
Introduction to git & WordPress
Introduction to git & WordPress
Deploying software at Scale
Deploying software at Scale
Dockerize magento 2 24.02.2016
Dockerize magento 2 24.02.2016
Application Deployment at UC Riverside
Application Deployment at UC Riverside
Taking Docker to Production: What You Need to Know and Decide
Taking Docker to Production: What You Need to Know and Decide
Taking Docker to Production: What You Need to Know and Decide
Taking Docker to Production: What You Need to Know and Decide
Evolution of deploy.sh
Evolution of deploy.sh
Magento 2 Workflows
Magento 2 Workflows
Go with the Flow - A Guide to a WordPress Workflow
Go with the Flow - A Guide to a WordPress Workflow
My talk at LVEE 2016
My talk at LVEE 2016
Production Ready WordPress - WC Utrecht 2017
Production Ready WordPress - WC Utrecht 2017
More from devObjective
Lets git together
Lets git together
devObjective
Raspberry Pi a la CFML
Raspberry Pi a la CFML
devObjective
Command box
Command box
devObjective
Front end-modernization
Front end-modernization
devObjective
Using type script to build better apps
Using type script to build better apps
devObjective
Csp and http headers
Csp and http headers
devObjective
Who owns Software Security
Who owns Software Security
devObjective
Naked and afraid Offline mobile
Naked and afraid Offline mobile
devObjective
Web hackingtools 2015
Web hackingtools 2015
devObjective
Node without servers aws-lambda
Node without servers aws-lambda
devObjective
I am-designer
I am-designer
devObjective
Garbage First and You!
Garbage First and You!
devObjective
Fusion Reactor
Fusion Reactor
devObjective
Paying off emotional debt
Paying off emotional debt
devObjective
My SQL Skills Killed the Server
My SQL Skills Killed the Server
devObjective
Authentication Control
Authentication Control
devObjective
Multiply like rabbits with rabbit mq
Multiply like rabbits with rabbit mq
devObjective
Preso slidedeck
Preso slidedeck
devObjective
Intro to TDD & BDD
Intro to TDD & BDD
devObjective
Rethink Async with RXJS
Rethink Async with RXJS
devObjective
More from devObjective
(20)
Lets git together
Lets git together
Raspberry Pi a la CFML
Raspberry Pi a la CFML
Command box
Command box
Front end-modernization
Front end-modernization
Using type script to build better apps
Using type script to build better apps
Csp and http headers
Csp and http headers
Who owns Software Security
Who owns Software Security
Naked and afraid Offline mobile
Naked and afraid Offline mobile
Web hackingtools 2015
Web hackingtools 2015
Node without servers aws-lambda
Node without servers aws-lambda
I am-designer
I am-designer
Garbage First and You!
Garbage First and You!
Fusion Reactor
Fusion Reactor
Paying off emotional debt
Paying off emotional debt
My SQL Skills Killed the Server
My SQL Skills Killed the Server
Authentication Control
Authentication Control
Multiply like rabbits with rabbit mq
Multiply like rabbits with rabbit mq
Preso slidedeck
Preso slidedeck
Intro to TDD & BDD
Intro to TDD & BDD
Rethink Async with RXJS
Rethink Async with RXJS
Recently uploaded
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
Puma Security, LLC
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
Igalia
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
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
wesley chun
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
HampshireHUG
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
UK Journal
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Katpro Technologies
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Principled Technologies
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
Antenna Manufacturer Coco
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
The Digital Insurer
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Gabriella Davis
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
hans926745
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Delhi Call girls
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
naman860154
Recently uploaded
(20)
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
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...
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
Effective version control
1.
Effective Version Control Barney
Boisvert
2.
Agenda ● Who am
I? ● Concepts ● Evolution ● Best practices ● Centralized or Distributed?
3.
Who Am I? ●
Software Architect ● JVM Engineer ● Craftsman ● Father ● Goalkeeper ● Whisk(e)?y Enthusiast
4.
Concepts ● Repository ● Working
copy ● Patch ● History ● Tag
5.
Concepts ● Repository ● Working
copy ● Patch ● History ● Tag 1 2 3 4 5 6 7 WC initial commit HEAD
6.
Concepts ● Repository ● Working
copy ● Patch ● History ● Tag 1 2 3 4 5 6 7 WC initial commit HEADv1.0
7.
Concepts ● Branch ● Merge ●
Ancestry ● Repository ● Working copy ● Patch ● History ● Tag 1 2 3 4 5 6 7 WC initial commit HEAD HEAD v1.0
8.
Evolution* ● SCCS ● RCS ●
CVS ● SVN ● Git / Mercurial open-source centric, not comprehensive BitMover Inc. Perforce Software Inc. IBM Rational Microsoft ● BitKeeper ● Perforce ● ClearCase ● TFS, née VSS 1 2 3 1 2 3 * 4 4
9.
Evolution ● diff, patch
& email ● SCCS ● RCS ● CVS ● SVN ● Git/Mercurial
10.
“Best” Practices ● All
Hail /trunk! ● Commit early, commit often ● Branch early, merge often
11.
“Best” Practices ● All
Hail /trunk! ● Commit early, commit often ● Branch early, merge often ● master is always releasable ● Use feature branch(es) ● Tag every release ● Hotfix branches ● Release artifacts
12.
“Distributed” Version Control
Systems ● Holy Shiny Tech, Batman! ● Defer centralization ● Whole repo everywhere ● BLOB storage ● Repo-per-unit ● Access-per-repo ● Addressability
13.
Concepts ● Vendor branch ●
Fork ● Pull request ● Repository ● Working copy ● Patch ● History ● Ancestry ● Branch ● Merge ● Tag
14.
Evolution ● Facebook's Mercurial ●
XxxHub.com ● SCCS ● RCS ● CVS ● SVN ● Git/Mercurial ● diff, patch & email
15.
Soapbox! Version Control If you
aren't using version control, start before you do anything else. Tooling Your tools are more powerful than you can possibly imagine. Don't be a Hero People smarter than you (or I) already did it; use their code.
Download now