SlideShare a Scribd company logo
Git
Version Control System
Version Control System
• A way to keep track of changes to files (& folders)
• Between multiple authors (developers)
• A record of “who” did “what”, “when”
• “Why”, is provided by commit messages
Version Control System (Types)
• Centralized (Subversion, CVS)
• Server has the master repository, all commits go to the server
• Distributed (Git, Mercurial)
• Server has the master repository, but you have a copy (clone) of the
repository on your machine
Git is…
Git is…
• An open source VCS designed for speed and efficiency
• Created by Linus Torvalds (for managing Linux kernel)
• Hosted solutions include Github.com (more expensive) or
Bitbucket.com (cheaper)
• or running your own Git server
Moreover Git is…
• An open source, distributed version control software designed for
speed and efficiency
• Revisions (commits) you make to your local repository are available to
you only
• The next time you connect to the internet, push your changes to a
remote repository to share them
How it woks…
Remote Repo
Working Directory
Index
Repository
"Staging"
"a copy of your project"
git add
git commit
git push
/ git pull
internet
your pc
"your clone of the remote repo"
your edits
git clone
Git usages
Git usages : Understanding Git Workflow
Obtain a
repository
Make
some edits
Stage your
changes
Commit
your work
Push to
server
Git init
Git clone
Git pull
git commitgit add git push
Git pull
edits
git add git add git add
edits editsgit
commit
git
commit git
commit
Repo
Work
Stage
Repo
Work
Stage
Repo
Work
Stage
Repo
--> time -->
Origin
git clone
git pull
Origin
git
push
(git init)
internet
your pc
Git usages : Branches
•Why do branches matter? An example to
illustrate...
• Monday: You put all the client's code into a repo,
clone it locally
• Tuesday: You create a branch to implement a new
feature, making several commits
Git usages : Branches
• Wednesday: You realize that it would be better to
split out the feature into a couple different include
files, so you create 2 new files and delete the old
one. You commit your work.
• Thursday: The client contacts you frantically
wanting a hot fix for an issue discovered on the
version of the code on the live site.
Git usages : Branches
•What do you do now?
• You deleted their version of the file on
Wednesday, right?
• No! You made a branch.
• Their original file is in the master branch still!
Git usages : Branches
• Why:
• Try out an idea - experiment
• Isolate work units - keep unfinished work separate
• Work on long-running topics - come back to things later
• Share your work in progress with others without altering
the code in production or in development (remote feature
branches)
Branch Workflow
git branch "Branch"
git checkout Branch
git checkout Master
git merge Branch
edits
git add git add git add
edits edits
git
commit
git
commit
git
commit
Master
Branch
Work
Stage
Branch
Work
Stage
Branch
Work
Stage
Master
Branch
--> time -->
Origin
git clone
git pull
Origin
git push
internet
your pc
vs
• Centralized Version
Control Systems
(DVCS)
 Central, authoritative repository
 All changes saved in one single
location
• Distributed Version
Control Systems (DVCS)
 Clients can make changes in the
repositories and those changes will be
local to them.
SVN Dataflow Git Data Flow
Working
Dir
Remote
Repository
Online Source Control
 User must be online in order to
commit to the repository from
the working copy.
Offline Source Control
 Clients can commit changes to their
localized repositories as new
revisions even while being offline
Longer time to store
because all of the
data is stored in a
centralized repository.
 Extremely Fast
Complete copy of the data is stored
locally in the client’s system
 SVN help is more
organized
 There is some time wasted
since it is difficult to get a
quick reference from Git’s
search.
Creating and working
on branch/Merge is
complex and difficult to
use
Simple and Easy to use
branch and Merge
The working directory of
a developer is itself a
branch.
Sequencial Commits
 Data is lost when simultaneous
commits of two or more working
copies are performed
Non-Sequencial Commits
 Large number of users can put data to
the same repository
 No need to worry about data lost or
immediate merging of others changes
Revision Tracking
 SVN keeps record of files
 File history is lost on renaming
 Fixed by giving a file unique
long lived id
Revision Tracking
 Git keeps track of contents.
 Even a small change in content it tracks
it as a separate change.
Particially Checkout
 Checkouts at subdirectory level are
possible.
Only Full Checkout
 Git will not allow you to checkout a
subdirectory.
Simple usablity
 Simpler to learn
• create, commit and checkout
 Single central "master-repository”
Complex usablity
 Two modes of creating repositories
• checkout vs. clone
• commit vs. push.
 Git has more concepts and more
commands.
 many Git commands are cryptic, and
error messages are very user-unfriendly
Projects using SVN Projects using Git
BitBucket
Gitorious
Codeplex
Git
Thank you for your attention

More Related Content

PPTX
Getting Started with Git: A Primer for SVN and TFS Users
PPTX
Git with bitbucket
PPT
Software Carpentry - Version control slides
PPTX
Git hub_pptx
PPSX
Git the fast version control system
PPTX
Version control git day01
PDF
Build, Ship and Run Unikernels
PPTX
Version Control with Git
Getting Started with Git: A Primer for SVN and TFS Users
Git with bitbucket
Software Carpentry - Version control slides
Git hub_pptx
Git the fast version control system
Version control git day01
Build, Ship and Run Unikernels
Version Control with Git

What's hot (18)

PPTX
Version control
PPTX
Git Basics
PPTX
Microservices and Best Practices
PPTX
Git&subversion
PPTX
CloudFest 2018 Hackathon Project Results Presentation - CFHack18
PPTX
Global Software Development powered by Perforce
PDF
DockerCon EU 2015: Official Repos and Project Nautilus
PPTX
Continuous Integration and Deployment with Jenkins for PCF
PPTX
Version control system and Git
PPTX
DevOps at FSOFT as BOI | Nguyễn Hoài Nam, Vũ Xuân Lộc
PPTX
SOCCNX11 All you need to know about Orient Me
PDF
Microservices, DevOps, and Containers with OpenShift and Fabric8
PDF
DCEU 18: 5 Patterns for Success in Application Transformation
PPTX
DockerCon EU 2015: Docker Universal Control Plane (Gordon's Special Session)
PPTX
DockerCon EU 2015: Docker Monitoring
PPTX
JavaEdge 2008: Your next version control system
PDF
Adopting containers and kubernetes in production
Version control
Git Basics
Microservices and Best Practices
Git&subversion
CloudFest 2018 Hackathon Project Results Presentation - CFHack18
Global Software Development powered by Perforce
DockerCon EU 2015: Official Repos and Project Nautilus
Continuous Integration and Deployment with Jenkins for PCF
Version control system and Git
DevOps at FSOFT as BOI | Nguyễn Hoài Nam, Vũ Xuân Lộc
SOCCNX11 All you need to know about Orient Me
Microservices, DevOps, and Containers with OpenShift and Fabric8
DCEU 18: 5 Patterns for Success in Application Transformation
DockerCon EU 2015: Docker Universal Control Plane (Gordon's Special Session)
DockerCon EU 2015: Docker Monitoring
JavaEdge 2008: Your next version control system
Adopting containers and kubernetes in production
Ad

Viewers also liked (20)

PDF
Rail Transportation Of Ethanol: Will There Be Enough Capacity?
PPSX
Romania
PDF
Vendeka corporate presentation
PPT
About the word "Nigthmare"
ODP
Kleer yoseki coding dojo - 2012-08-03 - medellín
PPTX
Presentazione retica 2012
PPTX
PPT
15 kwaliteitsfactoren - Henk Jan Bijmolt (Cleafs)
PPT
Drinking ageeeeee
KEY
Bodhi & liam.v
PPTX
Storyboard haastattelu2
PDF
Cebit eurasia 2014 eng brochure
PDF
Energy
PPT
X第4章 struts2入门
PDF
B2B seo ian miller
PDF
07 nov dic 2011
PPTX
Mole nikh
PDF
Cursos
PPT
Solution[1]
PPT
강의자료8
Rail Transportation Of Ethanol: Will There Be Enough Capacity?
Romania
Vendeka corporate presentation
About the word "Nigthmare"
Kleer yoseki coding dojo - 2012-08-03 - medellín
Presentazione retica 2012
15 kwaliteitsfactoren - Henk Jan Bijmolt (Cleafs)
Drinking ageeeeee
Bodhi & liam.v
Storyboard haastattelu2
Cebit eurasia 2014 eng brochure
Energy
X第4章 struts2入门
B2B seo ian miller
07 nov dic 2011
Mole nikh
Cursos
Solution[1]
강의자료8
Ad

Similar to Git (20)

PPTX
GIT INTRODUCTION
PPTX
GIT In Detail
PPTX
Source Control Using Git
PPTX
Git 101
PPTX
01 - Git vs SVN
PPTX
Git usage (Basics and workflow)
PDF
Version Control History and Git Basics
PPTX
Git Overview
PPT
PPTX
Git more done
PDF
From SVN to Git
PDF
Git vs Subversion: ¿Cuando elegir uno u otro?
PPT
Introduction to git
PPTX
Mini-training: Let’s Git It!
PPTX
PPTX
Introduction to Git and Github
ODP
introduction in version control system
PPTX
Version Control Systems -- Git -- Part I
PPTX
GIT INTRODUCTION
GIT In Detail
Source Control Using Git
Git 101
01 - Git vs SVN
Git usage (Basics and workflow)
Version Control History and Git Basics
Git Overview
Git more done
From SVN to Git
Git vs Subversion: ¿Cuando elegir uno u otro?
Introduction to git
Mini-training: Let’s Git It!
Introduction to Git and Github
introduction in version control system
Version Control Systems -- Git -- Part I

Recently uploaded (20)

PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Empathic Computing: Creating Shared Understanding
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
cuic standard and advanced reporting.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Modernizing your data center with Dell and AMD
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Electronic commerce courselecture one. Pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Big Data Technologies - Introduction.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
KodekX | Application Modernization Development
Digital-Transformation-Roadmap-for-Companies.pptx
Empathic Computing: Creating Shared Understanding
20250228 LYD VKU AI Blended-Learning.pptx
A Presentation on Artificial Intelligence
Encapsulation_ Review paper, used for researhc scholars
cuic standard and advanced reporting.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Spectral efficient network and resource selection model in 5G networks
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
NewMind AI Monthly Chronicles - July 2025
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Modernizing your data center with Dell and AMD
The AUB Centre for AI in Media Proposal.docx
Electronic commerce courselecture one. Pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Big Data Technologies - Introduction.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Diabetes mellitus diagnosis method based random forest with bat algorithm
KodekX | Application Modernization Development

Git

  • 1. Git
  • 3. Version Control System • A way to keep track of changes to files (& folders) • Between multiple authors (developers) • A record of “who” did “what”, “when” • “Why”, is provided by commit messages
  • 4. Version Control System (Types) • Centralized (Subversion, CVS) • Server has the master repository, all commits go to the server • Distributed (Git, Mercurial) • Server has the master repository, but you have a copy (clone) of the repository on your machine
  • 6. Git is… • An open source VCS designed for speed and efficiency • Created by Linus Torvalds (for managing Linux kernel) • Hosted solutions include Github.com (more expensive) or Bitbucket.com (cheaper) • or running your own Git server
  • 7. Moreover Git is… • An open source, distributed version control software designed for speed and efficiency • Revisions (commits) you make to your local repository are available to you only • The next time you connect to the internet, push your changes to a remote repository to share them
  • 8. How it woks… Remote Repo Working Directory Index Repository "Staging" "a copy of your project" git add git commit git push / git pull internet your pc "your clone of the remote repo" your edits git clone
  • 10. Git usages : Understanding Git Workflow Obtain a repository Make some edits Stage your changes Commit your work Push to server Git init Git clone Git pull git commitgit add git push Git pull
  • 11. edits git add git add git add edits editsgit commit git commit git commit Repo Work Stage Repo Work Stage Repo Work Stage Repo --> time --> Origin git clone git pull Origin git push (git init) internet your pc
  • 12. Git usages : Branches •Why do branches matter? An example to illustrate... • Monday: You put all the client's code into a repo, clone it locally • Tuesday: You create a branch to implement a new feature, making several commits
  • 13. Git usages : Branches • Wednesday: You realize that it would be better to split out the feature into a couple different include files, so you create 2 new files and delete the old one. You commit your work. • Thursday: The client contacts you frantically wanting a hot fix for an issue discovered on the version of the code on the live site.
  • 14. Git usages : Branches •What do you do now? • You deleted their version of the file on Wednesday, right? • No! You made a branch. • Their original file is in the master branch still!
  • 15. Git usages : Branches • Why: • Try out an idea - experiment • Isolate work units - keep unfinished work separate • Work on long-running topics - come back to things later • Share your work in progress with others without altering the code in production or in development (remote feature branches)
  • 16. Branch Workflow git branch "Branch" git checkout Branch git checkout Master git merge Branch edits git add git add git add edits edits git commit git commit git commit Master Branch Work Stage Branch Work Stage Branch Work Stage Master Branch --> time --> Origin git clone git pull Origin git push internet your pc
  • 17. vs
  • 18. • Centralized Version Control Systems (DVCS)  Central, authoritative repository  All changes saved in one single location • Distributed Version Control Systems (DVCS)  Clients can make changes in the repositories and those changes will be local to them.
  • 19. SVN Dataflow Git Data Flow Working Dir Remote Repository
  • 20. Online Source Control  User must be online in order to commit to the repository from the working copy. Offline Source Control  Clients can commit changes to their localized repositories as new revisions even while being offline
  • 21. Longer time to store because all of the data is stored in a centralized repository.  Extremely Fast Complete copy of the data is stored locally in the client’s system
  • 22.  SVN help is more organized  There is some time wasted since it is difficult to get a quick reference from Git’s search.
  • 23. Creating and working on branch/Merge is complex and difficult to use Simple and Easy to use branch and Merge The working directory of a developer is itself a branch.
  • 24. Sequencial Commits  Data is lost when simultaneous commits of two or more working copies are performed Non-Sequencial Commits  Large number of users can put data to the same repository  No need to worry about data lost or immediate merging of others changes
  • 25. Revision Tracking  SVN keeps record of files  File history is lost on renaming  Fixed by giving a file unique long lived id Revision Tracking  Git keeps track of contents.  Even a small change in content it tracks it as a separate change.
  • 26. Particially Checkout  Checkouts at subdirectory level are possible. Only Full Checkout  Git will not allow you to checkout a subdirectory.
  • 27. Simple usablity  Simpler to learn • create, commit and checkout  Single central "master-repository” Complex usablity  Two modes of creating repositories • checkout vs. clone • commit vs. push.  Git has more concepts and more commands.  many Git commands are cryptic, and error messages are very user-unfriendly
  • 28. Projects using SVN Projects using Git BitBucket Gitorious Codeplex
  • 30. Thank you for your attention