SlideShare a Scribd company logo
Git’in on Windows
An introduction to git on the
     Microsoft platform
About Me
Stacy Vicknair, MVP MCPD
Development Consultant for Sparkhound

Blog - http://www.wtfnext.com
BRAG - http://www.braglunch.com
TM - http://www.batonrougespeaks.com

Twitter: @svickn
Email: stacy.vicknair@sparkhound.com
Agenda
•   What is git?
•   Why (or why not) choose git?
•   Where do I git it?
•   git’in the basics
•   git’in against GitHub
•   git’in against TFS
•   Resources
What is git?
• Distributed Version Control System (DVCS)
  – Like TFS’s source control, but “distributed”
• Open Source under GNU LGPL v2.1
• Freely available from http://git-scm.com
What is DVCS?
•   No true “central repository”
•   Not a checkout, it’s a clone
•   Check in when you want
•   Push to central server when it’s stable
Who’s git’in it
•   The Linux Kernel
•   Google for the Android OS
•   Ruby on Rails
•   PostgreSQL
•   Eclipse
•   Perl
•   Codeplex
•   … Git.
Why (or why not) choose git?
Pros                                Cons
• Free                              • Windows Second-Class
• Distributed (self replicating)    • Barrier to entry
• Lightweight                       • Different permissions
• Secure via SSH / HTTPS              paradigm
• Changeset driven                  • It’s not ALM, just DVCS
• Easy branching / merging          • Single repo management
                                       – Google’s Repo
• Disconnected check-ins

*based on Clearvision White Paper
Where do I git it?
                                         (see what I did there)

git                                                   GitExtensions
http://git-scm.com/                                   GUI / Explorer and VS integration for Windows
                                                      http://code.google.com/p/msysgit/

msysgit
Git for Windows                                       gitflow
http://code.google.com/p/msysgit/                     Git extensions for high level branch process workflow
                                                      https://github.com/nvie/gitflow

posh-git
Git extensions for Powershell
https://github.com/dahlbyk/posh-git


git-tfs
Allows for TFS access via git
https://github.com/git-tfs/git-tfs
Git’in the Basics
Om nom nom knowledge
Git Basics: Staging




    Image from http://progit.org
Git Basics: Ground level
git init – Create a repo
git add – Stage files in the index
git commit – Commit a file
git status – List current modifications
git log – List of checkin history
Git Basics: Stash, Branch and Merge
git stash – Hold changes for later retrieval
git branch – Create, delete and list branches
git checkout – Switch branches
git rebase – Rebase branch from parent
git merge – Merge from child branch
Git Intermediates:
                    Repo Administration




Images from http://whygitisbetterthanx.com
Git Intermediates:
Repo Administration
Git Intermediates:
Repo Administration
Git Intermediates:
Repo Administration
Git’in against GitHub
        yeehaw
Git’in GitHub: Creating and Cloning
• GitHub requires SSH
• git clone – Copy existing repository locally
• git push - Push changes to a different repo
• git remote – Create, list and delete connected
  repos
• git tag – Tags a version of the code
Git’in against TFS
       Moo.
Git’in TFS: clone, .gitignore, and checkintool

• .gitignore files help prevent unwanted
  checkins
• git tfs clone – Pull TFS repo with history
• git tfs quickclone – No history
• git tfs checkintool – TFS-esque checkin process
• git tfs checkin – Git-esque quick checkin
Agenda
•   What is git?
•   Why (or why not) choose git?
•   Where do I git it?
•   git’in the basics
•   git’in against GitHub
•   git’in against TFS
•   Resources
Resources
Tutorials
                                                       stacy.vicknair@sparkhound.com
http://progit.org
http://book.git-scm.com/                                                      @svickn

Downloads
http://git-scm.com/
http://code.google.com/p/msysgit/
https://github.com/dahlbyk/posh-git
https://github.com/git-tfs/git-tfs
http://code.google.com/p/msysgit/
https://github.com/nvie/gitflow

Presentation Resources
http://stackoverflow.com/questions/4140133/how-does-tfss-shelveset-model-compare-to-a-dvcs
http://haacked.com/archive/2011/12/19/get-git-for-windows.aspx
http://nathanj.github.com/gitguide/tour.html
http://www.clearvision-cm.com/whitepapers/Clearvision%20-%20Git%20White%20Paper.pdf
http://whygitisbetterthanx.com

More Related Content

What's hot (20)

PPTX
Git & Github
Aman Lalpuria
 
PPTX
Git kelvin
Kwong Wang Ho
 
PDF
Git and GitHub
Rick Umali
 
PDF
Brief tutorial on Git
聖文 鄭
 
PDF
Git: A Getting Started Presentation
Nap Ramirez
 
PPTX
Open source
onaelmangabo
 
PDF
Git for Beginners
Rick Umali
 
PDF
Mini git tutorial
Cristian Lucchesi
 
PDF
Starting with Git & GitHub
Nicolás Tourné
 
PPTX
Up GitLab Presentation 2015
Kumaran Balachandran
 
PPT
Git Introduction
Gareth Hall
 
PDF
Git advanced
Peter Vandenabeele
 
PPTX
Git and github fundamentals
RajKharvar
 
PPTX
Git Lab Introduction
Krunal Doshi
 
PPTX
Git basics
Padmavathi Tiwari
 
PDF
GitHub
ThomasLai27
 
PPTX
Why we ditched TFS and embraced Git, Github, TeamCity and Myget
Dennis Doomen
 
PDF
How Git and Gerrit make you more productive
Karsten Dambekalns
 
PDF
Know the Science behind WorkFlows using Git & GitHhub
Edureka!
 
Git & Github
Aman Lalpuria
 
Git kelvin
Kwong Wang Ho
 
Git and GitHub
Rick Umali
 
Brief tutorial on Git
聖文 鄭
 
Git: A Getting Started Presentation
Nap Ramirez
 
Open source
onaelmangabo
 
Git for Beginners
Rick Umali
 
Mini git tutorial
Cristian Lucchesi
 
Starting with Git & GitHub
Nicolás Tourné
 
Up GitLab Presentation 2015
Kumaran Balachandran
 
Git Introduction
Gareth Hall
 
Git advanced
Peter Vandenabeele
 
Git and github fundamentals
RajKharvar
 
Git Lab Introduction
Krunal Doshi
 
Git basics
Padmavathi Tiwari
 
GitHub
ThomasLai27
 
Why we ditched TFS and embraced Git, Github, TeamCity and Myget
Dennis Doomen
 
How Git and Gerrit make you more productive
Karsten Dambekalns
 
Know the Science behind WorkFlows using Git & GitHhub
Edureka!
 

Similar to Git'in on Windows (20)

PPTX
Mini-training: Let’s Git It!
Betclic Everest Group Tech Team
 
PDF
Git Going With DVCS v1.5.2
Matthew McCullough
 
PPT
Git training
adm_exoplatform
 
PPTX
Git tips and tricks
Chris Ballance
 
PDF
Git for Windows
Ovidiu Dimulescu
 
PPT
Introduction to Git
atishgoswami
 
PPT
Introduction to git
Nguyen Van Hung
 
PPT
Git presentation
James Cuzella
 
PDF
ITCamp 2013 - Alessandro Pilotti - Git crash course for Visual Studio devs
ITCamp
 
PDF
Git cheat-sheets
ozone777
 
PPTX
Git basic
saif shobuz
 
PPTX
Roslyn on GitHub
Immo Landwerth
 
PPTX
Getting Started with Git: A Primer for SVN and TFS Users
Noam Kfir
 
PPTX
Git(hub) for windows developers
bwullems
 
ODP
Introduction to Git
Amit Mathur
 
PPTX
Git 101
jayrparro
 
PPTX
Git workshop 33degree 2011 krakow
Luca Milanesio
 
PDF
Why Git Sucks and you'll use it anyways
Carlos Taborda
 
PDF
Intro to Git
ojtibi
 
Mini-training: Let’s Git It!
Betclic Everest Group Tech Team
 
Git Going With DVCS v1.5.2
Matthew McCullough
 
Git training
adm_exoplatform
 
Git tips and tricks
Chris Ballance
 
Git for Windows
Ovidiu Dimulescu
 
Introduction to Git
atishgoswami
 
Introduction to git
Nguyen Van Hung
 
Git presentation
James Cuzella
 
ITCamp 2013 - Alessandro Pilotti - Git crash course for Visual Studio devs
ITCamp
 
Git cheat-sheets
ozone777
 
Git basic
saif shobuz
 
Roslyn on GitHub
Immo Landwerth
 
Getting Started with Git: A Primer for SVN and TFS Users
Noam Kfir
 
Git(hub) for windows developers
bwullems
 
Introduction to Git
Amit Mathur
 
Git 101
jayrparro
 
Git workshop 33degree 2011 krakow
Luca Milanesio
 
Why Git Sucks and you'll use it anyways
Carlos Taborda
 
Intro to Git
ojtibi
 
Ad

More from Stacy Vicknair (7)

PDF
Systems Thinking for Engineering Leaders.pdf
Stacy Vicknair
 
PDF
The Game Master's Guide to People Management
Stacy Vicknair
 
PPTX
Maintainable Documentation with Sphinx
Stacy Vicknair
 
PPTX
Building Faster Horses: Taking Over An Existing Software Product
Stacy Vicknair
 
PPTX
ASP.NET Routing Deep Dive
Stacy Vicknair
 
PPTX
ASP.NET Routing Deep Dive
Stacy Vicknair
 
PPTX
Asp.net routing with mvc deep dive
Stacy Vicknair
 
Systems Thinking for Engineering Leaders.pdf
Stacy Vicknair
 
The Game Master's Guide to People Management
Stacy Vicknair
 
Maintainable Documentation with Sphinx
Stacy Vicknair
 
Building Faster Horses: Taking Over An Existing Software Product
Stacy Vicknair
 
ASP.NET Routing Deep Dive
Stacy Vicknair
 
ASP.NET Routing Deep Dive
Stacy Vicknair
 
Asp.net routing with mvc deep dive
Stacy Vicknair
 
Ad

Recently uploaded (20)

PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
July Patch Tuesday
Ivanti
 
PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
July Patch Tuesday
Ivanti
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 

Git'in on Windows

  • 1. Git’in on Windows An introduction to git on the Microsoft platform
  • 2. About Me Stacy Vicknair, MVP MCPD Development Consultant for Sparkhound Blog - http://www.wtfnext.com BRAG - http://www.braglunch.com TM - http://www.batonrougespeaks.com Twitter: @svickn Email: [email protected]
  • 3. Agenda • What is git? • Why (or why not) choose git? • Where do I git it? • git’in the basics • git’in against GitHub • git’in against TFS • Resources
  • 4. What is git? • Distributed Version Control System (DVCS) – Like TFS’s source control, but “distributed” • Open Source under GNU LGPL v2.1 • Freely available from http://git-scm.com
  • 5. What is DVCS? • No true “central repository” • Not a checkout, it’s a clone • Check in when you want • Push to central server when it’s stable
  • 6. Who’s git’in it • The Linux Kernel • Google for the Android OS • Ruby on Rails • PostgreSQL • Eclipse • Perl • Codeplex • … Git.
  • 7. Why (or why not) choose git? Pros Cons • Free • Windows Second-Class • Distributed (self replicating) • Barrier to entry • Lightweight • Different permissions • Secure via SSH / HTTPS paradigm • Changeset driven • It’s not ALM, just DVCS • Easy branching / merging • Single repo management – Google’s Repo • Disconnected check-ins *based on Clearvision White Paper
  • 8. Where do I git it? (see what I did there) git GitExtensions http://git-scm.com/ GUI / Explorer and VS integration for Windows http://code.google.com/p/msysgit/ msysgit Git for Windows gitflow http://code.google.com/p/msysgit/ Git extensions for high level branch process workflow https://github.com/nvie/gitflow posh-git Git extensions for Powershell https://github.com/dahlbyk/posh-git git-tfs Allows for TFS access via git https://github.com/git-tfs/git-tfs
  • 9. Git’in the Basics Om nom nom knowledge
  • 10. Git Basics: Staging Image from http://progit.org
  • 11. Git Basics: Ground level git init – Create a repo git add – Stage files in the index git commit – Commit a file git status – List current modifications git log – List of checkin history
  • 12. Git Basics: Stash, Branch and Merge git stash – Hold changes for later retrieval git branch – Create, delete and list branches git checkout – Switch branches git rebase – Rebase branch from parent git merge – Merge from child branch
  • 13. Git Intermediates: Repo Administration Images from http://whygitisbetterthanx.com
  • 18. Git’in GitHub: Creating and Cloning • GitHub requires SSH • git clone – Copy existing repository locally • git push - Push changes to a different repo • git remote – Create, list and delete connected repos • git tag – Tags a version of the code
  • 20. Git’in TFS: clone, .gitignore, and checkintool • .gitignore files help prevent unwanted checkins • git tfs clone – Pull TFS repo with history • git tfs quickclone – No history • git tfs checkintool – TFS-esque checkin process • git tfs checkin – Git-esque quick checkin
  • 21. Agenda • What is git? • Why (or why not) choose git? • Where do I git it? • git’in the basics • git’in against GitHub • git’in against TFS • Resources
  • 22. Resources Tutorials [email protected] http://progit.org http://book.git-scm.com/ @svickn Downloads http://git-scm.com/ http://code.google.com/p/msysgit/ https://github.com/dahlbyk/posh-git https://github.com/git-tfs/git-tfs http://code.google.com/p/msysgit/ https://github.com/nvie/gitflow Presentation Resources http://stackoverflow.com/questions/4140133/how-does-tfss-shelveset-model-compare-to-a-dvcs http://haacked.com/archive/2011/12/19/get-git-for-windows.aspx http://nathanj.github.com/gitguide/tour.html http://www.clearvision-cm.com/whitepapers/Clearvision%20-%20Git%20White%20Paper.pdf http://whygitisbetterthanx.com