SlideShare a Scribd company logo
Ronald Roni Saha
ronaldsaha@gmail.com
Sr. System Developer, SoftwarePeople
Selecting your Version
Control
Problem
Problem
Have you ever faced situations like the followings,
 Commented out codes.
 Maintain multiple versions of same project.
 Share your code, or work in a team on same code.
 Experimenting with a new feature without interfering with working
code
 Lost code or hard disk crashed or had a backup that was too old.
 Made a change to code, realized it was a mistake and wanted to
revert back.
 Want to see the difference between two (or more) versions of your
Version Control
A version control system (also known as a Revision Control
System) is a repository of files, often the files for the source
code of computer programs, with monitored access. Every
change made to the source is tracked, along with who made
the change, why they made it, and references to problems
fixed, or enhancements introduced, by the change.
Types of Version Control
 Centralized version control systems
 Distributed version control systems
Version Control
Terminology
 Repository
 Working Copy
 Revision/Version
 Trunk/Master
 Branch
 Head
 Check out/Check in - Pull changes/Push changes
 Commit changes
Version Control
Version Control
Benefits in using Version Control
 What, who, why and when
 Compare revision
 Coordinating Teams
 Branching
 Backup
 History of changes
Team foundation version control and
Git
Team foundation version control
 It is a centralized version control system.
 It is default version control system for Microsoft Team Foundation.
 Check out means downloading a snapshot of the code at a specific
point of time.
 Check-in lock
 Enforce check in policies
 Shelving or stashing your changes stored in server.
Team foundation version control and
Git
Git
 It is a distributed version control system.
 It can be optionally selected as a version control for Microsoft Team
Foundation System.
 Check out of working copy means cloning entire repository in local
system.
 You can work offline.
 You can make changes commit in local repository.
 Shelving or stashing is done locally.
 Creating branch is very easy to do.
Thank You

More Related Content

PPTX
Version control
PPTX
Version control system
PPT
Performance and load testing
PDF
GIT | Distributed Version Control System
PPTX
Understanding GIT and Version Control
PDF
Git and GitHub for Documentation
ODP
Introduction to Version Control
PPTX
SCM (Source Control Management) - Git Basic
Version control
Version control system
Performance and load testing
GIT | Distributed Version Control System
Understanding GIT and Version Control
Git and GitHub for Documentation
Introduction to Version Control
SCM (Source Control Management) - Git Basic

What's hot (20)

PPTX
Bitbucket
PPT
Version Control System
PDF
Introduction to Git and GitHub
PPTX
GitLab for CI/CD process
PDF
Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
PPTX
Jenkins CI presentation
PPTX
GitLab.pptx
PPTX
BitBucket presentation
PPTX
CICD Pipeline Using Github Actions
PPTX
Git Lab Introduction
PPTX
Jenkins CI
PPTX
Jenkins Introduction
PPTX
Gitlab CI/CD
PPTX
Jenkins tutorial for beginners
PDF
github-actions.pdf
PPTX
Introduction to Gitlab | Gitlab 101 | Training Session
PPTX
Version control system and Git
PPTX
Mejores prácticas de CI / CD para construir aplicaciones modernas
PPTX
Git collaboration
PPT
Jenkins Overview
Bitbucket
Version Control System
Introduction to Git and GitHub
GitLab for CI/CD process
Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
Jenkins CI presentation
GitLab.pptx
BitBucket presentation
CICD Pipeline Using Github Actions
Git Lab Introduction
Jenkins CI
Jenkins Introduction
Gitlab CI/CD
Jenkins tutorial for beginners
github-actions.pdf
Introduction to Gitlab | Gitlab 101 | Training Session
Version control system and Git
Mejores prácticas de CI / CD para construir aplicaciones modernas
Git collaboration
Jenkins Overview
Ad

Viewers also liked (10)

PDF
Desarrollo Web
PDF
ÂżCĂłmo aprender Python sin morir en el intento?
PDF
A brief introduction to version control systems
PDF
Git Version Control System
PDF
Control de versiones con Git
PDF
Version Control & Git
PPT
Introduction to Version Control and Configuration Management
PDF
What is version control software and why do you need it?
PPTX
Basic Git Intro
PDF
Introduction to git
Desarrollo Web
ÂżCĂłmo aprender Python sin morir en el intento?
A brief introduction to version control systems
Git Version Control System
Control de versiones con Git
Version Control & Git
Introduction to Version Control and Configuration Management
What is version control software and why do you need it?
Basic Git Intro
Introduction to git
Ad

Similar to Version control (20)

PPTX
version control system (2).pptx
PDF
Source code management
PPT
ClearCase Basics
PDF
Version Uncontrolled - How to Manage Your Version Control (whitepaper)
PPTX
What is and why version control systems
PPTX
Source Code Management Slides
PPTX
Subversion
PPTX
Configuration management
PDF
How to use CVS applied to SOLab
PPT
Subversion
ODP
Intro To Version Control
PPTX
Version control
PPTX
02-version control(DevOps Series)
PPT
Source Code management System
PPTX
the Version Control systemlocalized.pptx
PPTX
Version Control Training - First Lego League
PPTX
Slide set 7 (Source Code Management History Overview) - Copy.pptx
PPTX
SVN Information
PDF
Git Tutorial
PPT
Software Configuration Management
version control system (2).pptx
Source code management
ClearCase Basics
Version Uncontrolled - How to Manage Your Version Control (whitepaper)
What is and why version control systems
Source Code Management Slides
Subversion
Configuration management
How to use CVS applied to SOLab
Subversion
Intro To Version Control
Version control
02-version control(DevOps Series)
Source Code management System
the Version Control systemlocalized.pptx
Version Control Training - First Lego League
Slide set 7 (Source Code Management History Overview) - Copy.pptx
SVN Information
Git Tutorial
Software Configuration Management

More from Shahriar Iqbal Chowdhury (14)

PPTX
PPTX
Cloud friendly Enterprise Architecture
PPTX
Interactive SDLC
PPTX
Enterprise business Inteligence
PPTX
PPTX
Cloud Computing
PPTX
Application development gadget & gears
PPTX
Design Pattern that every cloud developer must know
PPTX
Strategy Pattern
PPTX
Observer pattern
PPTX
Adapter Design Pattern
PPTX
Factory method pattern
Cloud friendly Enterprise Architecture
Interactive SDLC
Enterprise business Inteligence
Cloud Computing
Application development gadget & gears
Design Pattern that every cloud developer must know
Strategy Pattern
Observer pattern
Adapter Design Pattern
Factory method pattern

Recently uploaded (20)

PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Approach and Philosophy of On baking technology
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
KodekX | Application Modernization Development
 
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
 
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
DOCX
The AUB Centre for AI in Media Proposal.docx
 
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Per capita expenditure prediction using model stacking based on satellite ima...
Dropbox Q2 2025 Financial Results & Investor Presentation
sap open course for s4hana steps from ECC to s4
Mobile App Security Testing_ A Comprehensive Guide.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Approach and Philosophy of On baking technology
Unlocking AI with Model Context Protocol (MCP)
Review of recent advances in non-invasive hemoglobin estimation
KodekX | Application Modernization Development
 
20250228 LYD VKU AI Blended-Learning.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
 
Network Security Unit 5.pdf for BCA BBA.
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
MIND Revenue Release Quarter 2 2025 Press Release
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
The AUB Centre for AI in Media Proposal.docx
 
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
NewMind AI Weekly Chronicles - August'25 Week I
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows

Version control

  • 1. Ronald Roni Saha ronaldsaha@gmail.com Sr. System Developer, SoftwarePeople Selecting your Version Control
  • 3. Problem Have you ever faced situations like the followings,  Commented out codes.  Maintain multiple versions of same project.  Share your code, or work in a team on same code.  Experimenting with a new feature without interfering with working code  Lost code or hard disk crashed or had a backup that was too old.  Made a change to code, realized it was a mistake and wanted to revert back.  Want to see the difference between two (or more) versions of your
  • 4. Version Control A version control system (also known as a Revision Control System) is a repository of files, often the files for the source code of computer programs, with monitored access. Every change made to the source is tracked, along with who made the change, why they made it, and references to problems fixed, or enhancements introduced, by the change. Types of Version Control  Centralized version control systems  Distributed version control systems
  • 5. Version Control Terminology  Repository  Working Copy  Revision/Version  Trunk/Master  Branch  Head  Check out/Check in - Pull changes/Push changes  Commit changes
  • 7. Version Control Benefits in using Version Control  What, who, why and when  Compare revision  Coordinating Teams  Branching  Backup  History of changes
  • 8. Team foundation version control and Git Team foundation version control  It is a centralized version control system.  It is default version control system for Microsoft Team Foundation.  Check out means downloading a snapshot of the code at a specific point of time.  Check-in lock  Enforce check in policies  Shelving or stashing your changes stored in server.
  • 9. Team foundation version control and Git Git  It is a distributed version control system.  It can be optionally selected as a version control for Microsoft Team Foundation System.  Check out of working copy means cloning entire repository in local system.  You can work offline.  You can make changes commit in local repository.  Shelving or stashing is done locally.  Creating branch is very easy to do.

Editor's Notes

  • #4: The code programmers write changes often. Bugs need to be fixed, features need to be added, and content needs to be changed. Most code is stored as plain old text files, and the code is changed by editing these files. Every time a change is saved, the old version of the file is overwritten with a new one. Unfortunately, no programmer is perfect, and sometimes, mistakes are made. If you make a change to a file, save it, compile it, and find out that something went wrong, it's often helpful to be able to go back to the old version or to get a report of what was actually changed, in order to focus on what may have gone wrong. That's where Version Control Systems come in.
  • #5: Centralized version control systems are based on the idea that there is a single "central" copy of your project somewhere (probably on a server), and programmers will "commit" their changes to this central copy.   Distributed version control systems do not necessarily rely on a central server to store all the versions of a project's files. Instead, every developer "clones" a copy of a repository and has the full history of the project on their own hard drive. This copy (or "clone") has all of the metadata of the original.
  • #6: Repository: Database with the complete revision history of all files under version control Working Copy: Local directory of files under version control where you can make changes Revision/Version: Snapshot(set of changes, state) of file or files in a point of time. Trunk/Master: The primary set of files in repository. Branch: A copy (or snapshot) of the repository that can be tracked in parallel without altering the main copy. Head: The latest revision in current branch.
  • #8: What, who, why and when: Knowing the what, who, why and when of changes. That helps comparing the performance of particular versions, working out when bugs were introduced (or fixed), and so on. Any problems that arose from a change can then be examined by what, who, why and when of the change. Compare revision: Developers may wish to compare today’s version of some software with yesterday’s version or last year’s version. Coordinating Teams: Allows Team to share resources. It lets one contributor work on a copy of the resources and then release their changes back to the common core when ready. Other contributors work on their own copies of the same resources at the same time, unaffected by each other’s changes until they choose to merge or commit their changes back to the project. Branching: You can use branches to work on longer-term tasks and then merge the branch back into the main line when it's done. Maintains separate “Production” versions of code that are always deployable. It let you have multiple parallel lines of development. You can work in two simultaneous features without interference and switch back and forth without much hassle. Backup: You can have a backup. You can recover any revision of any file based on date or on a milestone that you defined. History: You can have a history of changes.