SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
Why Git?	
      A quick
      trip down
      the Git
      rabbit
      hole.




   Mark Guzman
   mg@hasno.info
   @segy
   http://hasno.info
Thursday, March 4, 2010
What is Git	

                   Distributed Version Control

                   Fast (small C core)

                   Popular (Github)

                   Stupid Content Tracker




Thursday, March 4, 2010
Benefits
                   Easier Merging

                   Cheap fast branching

                   Speed

                   Checkout size

                   Maintains an easily usable history

                   Redundancy by default


Thursday, March 4, 2010
Why Merging
                  Tracking Matters
                   History Matters

                          Why did Bob change 10 files in his branch 3
                          weeks back?

                          Why did you change some of the same files in
                          yours?

                          How will you know a year down the road?



Thursday, March 4, 2010
File Based Change
                  Tracking




Thursday, March 4, 2010
Changeset Tracking



                          ✴Git treats all your changes as a single ChangeSet.
                          ✴It uses a SHA-1 hash of the changes to identify them
                           ✴Eg: commit 7ef55e41f1cf529e47723d869233492077c94896



Thursday, March 4, 2010
Stupid Content Tracking




                   Simple object relationships.

                          Tree (folder) -> Blob (file data)

Thursday, March 4, 2010
Commits -> Trees




Thursday, March 4, 2010
Refs (Branches)




                   Refs -> Commits -> Trees -> Blobs


Thursday, March 4, 2010
Staging




                   The Index (Staging Area) allows you to organize

                          Does the comment make sense for the commit?
Thursday, March 4, 2010
Centralized Workflow




                          Central Repository is treated as a hub for
                          changes. It would drive automated builds.

Thursday, March 4, 2010
Distributed Workflow




                          You can pull from any compatible* source


Thursday, March 4, 2010
Branch & Merge
                  tracking
                             Branch
                          with changes




                          Merged Tree




Thursday, March 4, 2010
Rebase?




                   Take my commits and replay them after the HEAD
                   of another branch.


Thursday, March 4, 2010
Windows Tools
                   TortoiseGit

                   Git Extensions

                   msysgit

                   Git Cheetah

                   git-gui

                   gitk


Thursday, March 4, 2010
Live Demo Time.




Thursday, March 4, 2010
Notes from the
                  Trenches
                   Learning curve

                   Server setup easier on linux

                   Submodules != svn externals

                   Watch our for detached HEAD

                   Be EXTREMELY careful with a force push.



Thursday, March 4, 2010
Force things at your
                  own risk.




Thursday, March 4, 2010
Why I choose Git.

                   Merging with history

                   Quick branch switching

                   Stashing and Staging

                   Best SCM I’ve used so far.




Thursday, March 4, 2010
Questions
                   References
                          http://git-scm.com

                          http://github.com

                          http://code.google.com/p/tortoisegit/

                          http://code.google.com/p/gitextensions/

                          http://marklodato.github.com/visual-git-guide/

                          http://progit.org/book/

                          http://www.timdavis.com.au/git/setting-up-a-msysgit-server-with-copssh-on-
                          windows/




Thursday, March 4, 2010

Más contenido relacionado

Similar a Why Git

IPTC NITF Maintenance June 2010
IPTC NITF Maintenance June 2010IPTC NITF Maintenance June 2010
IPTC NITF Maintenance June 2010Stuart Myles
 
Database Scalability Patterns
Database Scalability PatternsDatabase Scalability Patterns
Database Scalability PatternsRobert Treat
 
T3DD13 - Automated deployment for TYPO3 CMS (Workshop)
T3DD13 - Automated deployment for TYPO3 CMS (Workshop)T3DD13 - Automated deployment for TYPO3 CMS (Workshop)
T3DD13 - Automated deployment for TYPO3 CMS (Workshop)Tobias Liebig
 
Joomla: 10 years of progress (jd15fr)
Joomla: 10 years of progress (jd15fr)Joomla: 10 years of progress (jd15fr)
Joomla: 10 years of progress (jd15fr)Peter Martin
 
Is the iPad just a big iPhone?
Is the iPad just a big iPhone?Is the iPad just a big iPhone?
Is the iPad just a big iPhone?Griffin Technology
 
Palm Developer Day: Opening Keynote
Palm Developer Day: Opening KeynotePalm Developer Day: Opening Keynote
Palm Developer Day: Opening Keynotedion
 
Google App Engine - Devfest India 2010
Google App Engine -  Devfest India 2010Google App Engine -  Devfest India 2010
Google App Engine - Devfest India 2010Patrick Chanezon
 
Crowd-sourced Automated Firefox UI Testing
Crowd-sourced Automated Firefox UI TestingCrowd-sourced Automated Firefox UI Testing
Crowd-sourced Automated Firefox UI TestingHenrik Skupin
 
Using source control for domino development - AUSLUG 2016
Using source control for domino development - AUSLUG 2016Using source control for domino development - AUSLUG 2016
Using source control for domino development - AUSLUG 2016gregorbyte
 
Mercurial: Modern Source Control Management
Mercurial: Modern Source Control ManagementMercurial: Modern Source Control Management
Mercurial: Modern Source Control ManagementJohn Paulett
 
Fit botpresentation
Fit botpresentationFit botpresentation
Fit botpresentationmskmoorthy
 
Large Files without the Trials
Large Files without the TrialsLarge Files without the Trials
Large Files without the TrialsJazkarta, Inc.
 
"How Mozilla Uses Selenium"
"How Mozilla Uses Selenium""How Mozilla Uses Selenium"
"How Mozilla Uses Selenium"Stephen Donner
 

Similar a Why Git (14)

IPTC NITF Maintenance June 2010
IPTC NITF Maintenance June 2010IPTC NITF Maintenance June 2010
IPTC NITF Maintenance June 2010
 
Database Scalability Patterns
Database Scalability PatternsDatabase Scalability Patterns
Database Scalability Patterns
 
T3DD13 - Automated deployment for TYPO3 CMS (Workshop)
T3DD13 - Automated deployment for TYPO3 CMS (Workshop)T3DD13 - Automated deployment for TYPO3 CMS (Workshop)
T3DD13 - Automated deployment for TYPO3 CMS (Workshop)
 
Joomla: 10 years of progress (jd15fr)
Joomla: 10 years of progress (jd15fr)Joomla: 10 years of progress (jd15fr)
Joomla: 10 years of progress (jd15fr)
 
Is the iPad just a big iPhone?
Is the iPad just a big iPhone?Is the iPad just a big iPhone?
Is the iPad just a big iPhone?
 
Runtime evolution
Runtime evolutionRuntime evolution
Runtime evolution
 
Palm Developer Day: Opening Keynote
Palm Developer Day: Opening KeynotePalm Developer Day: Opening Keynote
Palm Developer Day: Opening Keynote
 
Google App Engine - Devfest India 2010
Google App Engine -  Devfest India 2010Google App Engine -  Devfest India 2010
Google App Engine - Devfest India 2010
 
Crowd-sourced Automated Firefox UI Testing
Crowd-sourced Automated Firefox UI TestingCrowd-sourced Automated Firefox UI Testing
Crowd-sourced Automated Firefox UI Testing
 
Using source control for domino development - AUSLUG 2016
Using source control for domino development - AUSLUG 2016Using source control for domino development - AUSLUG 2016
Using source control for domino development - AUSLUG 2016
 
Mercurial: Modern Source Control Management
Mercurial: Modern Source Control ManagementMercurial: Modern Source Control Management
Mercurial: Modern Source Control Management
 
Fit botpresentation
Fit botpresentationFit botpresentation
Fit botpresentation
 
Large Files without the Trials
Large Files without the TrialsLarge Files without the Trials
Large Files without the Trials
 
"How Mozilla Uses Selenium"
"How Mozilla Uses Selenium""How Mozilla Uses Selenium"
"How Mozilla Uses Selenium"
 

Último

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Último (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Why Git

  • 1. Why Git? A quick trip down the Git rabbit hole. Mark Guzman mg@hasno.info @segy http://hasno.info Thursday, March 4, 2010
  • 2. What is Git Distributed Version Control Fast (small C core) Popular (Github) Stupid Content Tracker Thursday, March 4, 2010
  • 3. Benefits Easier Merging Cheap fast branching Speed Checkout size Maintains an easily usable history Redundancy by default Thursday, March 4, 2010
  • 4. Why Merging Tracking Matters History Matters Why did Bob change 10 files in his branch 3 weeks back? Why did you change some of the same files in yours? How will you know a year down the road? Thursday, March 4, 2010
  • 5. File Based Change Tracking Thursday, March 4, 2010
  • 6. Changeset Tracking ✴Git treats all your changes as a single ChangeSet. ✴It uses a SHA-1 hash of the changes to identify them ✴Eg: commit 7ef55e41f1cf529e47723d869233492077c94896 Thursday, March 4, 2010
  • 7. Stupid Content Tracking Simple object relationships. Tree (folder) -> Blob (file data) Thursday, March 4, 2010
  • 9. Refs (Branches) Refs -> Commits -> Trees -> Blobs Thursday, March 4, 2010
  • 10. Staging The Index (Staging Area) allows you to organize Does the comment make sense for the commit? Thursday, March 4, 2010
  • 11. Centralized Workflow Central Repository is treated as a hub for changes. It would drive automated builds. Thursday, March 4, 2010
  • 12. Distributed Workflow You can pull from any compatible* source Thursday, March 4, 2010
  • 13. Branch & Merge tracking Branch with changes Merged Tree Thursday, March 4, 2010
  • 14. Rebase? Take my commits and replay them after the HEAD of another branch. Thursday, March 4, 2010
  • 15. Windows Tools TortoiseGit Git Extensions msysgit Git Cheetah git-gui gitk Thursday, March 4, 2010
  • 16. Live Demo Time. Thursday, March 4, 2010
  • 17. Notes from the Trenches Learning curve Server setup easier on linux Submodules != svn externals Watch our for detached HEAD Be EXTREMELY careful with a force push. Thursday, March 4, 2010
  • 18. Force things at your own risk. Thursday, March 4, 2010
  • 19. Why I choose Git. Merging with history Quick branch switching Stashing and Staging Best SCM I’ve used so far. Thursday, March 4, 2010
  • 20. Questions References http://git-scm.com http://github.com http://code.google.com/p/tortoisegit/ http://code.google.com/p/gitextensions/ http://marklodato.github.com/visual-git-guide/ http://progit.org/book/ http://www.timdavis.com.au/git/setting-up-a-msysgit-server-with-copssh-on- windows/ Thursday, March 4, 2010