Your SlideShare is downloading. ×
0
Why Git?	
      A quick
      trip down
      the Git
      rabbit
      hole.




   Mark Guzman
   mg@hasno.info
   @seg...
What is Git	

                   Distributed Version Control

                   Fast (small C core)

                   P...
Benefits
                   Easier Merging

                   Cheap fast branching

                   Speed

            ...
Why Merging
                  Tracking Matters
                   History Matters

                          Why did Bob c...
File Based Change
                  Tracking




Thursday, March 4, 2010
Changeset Tracking



                          ✴Git treats all your changes as a single ChangeSet.
                      ...
Stupid Content Tracking




                   Simple object relationships.

                          Tree (folder) -> Bl...
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...
Centralized Workflow




                          Central Repository is treated as a hub for
                          cha...
Distributed Workflow




                          You can pull from any compatible* source


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




 ...
Rebase?




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


Thur...
Windows Tools
                   TortoiseGit

                   Git Extensions

                   msysgit

             ...
Live Demo Time.




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

                   Server setup easier on lin...
Force things at your
                  own risk.




Thursday, March 4, 2010
Why I choose Git.

                   Merging with history

                   Quick branch switching

                   ...
Questions
                   References
                          http://git-scm.com

                          http://git...
Upcoming SlideShare
Loading in...5
×

Why Git

3,059

Published on

Why Git?" talk at the Fairfield-Westchester Dot Net User Group.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,059
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
56
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Why Git"

  1. 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. 2. What is Git Distributed Version Control Fast (small C core) Popular (Github) Stupid Content Tracker Thursday, March 4, 2010
  3. 3. Benefits Easier Merging Cheap fast branching Speed Checkout size Maintains an easily usable history Redundancy by default Thursday, March 4, 2010
  4. 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. 5. File Based Change Tracking Thursday, March 4, 2010
  6. 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. 7. Stupid Content Tracking Simple object relationships. Tree (folder) -> Blob (file data) Thursday, March 4, 2010
  8. 8. Commits -> Trees Thursday, March 4, 2010
  9. 9. Refs (Branches) Refs -> Commits -> Trees -> Blobs Thursday, March 4, 2010
  10. 10. Staging The Index (Staging Area) allows you to organize Does the comment make sense for the commit? Thursday, March 4, 2010
  11. 11. Centralized Workflow Central Repository is treated as a hub for changes. It would drive automated builds. Thursday, March 4, 2010
  12. 12. Distributed Workflow You can pull from any compatible* source Thursday, March 4, 2010
  13. 13. Branch & Merge tracking Branch with changes Merged Tree Thursday, March 4, 2010
  14. 14. Rebase? Take my commits and replay them after the HEAD of another branch. Thursday, March 4, 2010
  15. 15. Windows Tools TortoiseGit Git Extensions msysgit Git Cheetah git-gui gitk Thursday, March 4, 2010
  16. 16. Live Demo Time. Thursday, March 4, 2010
  17. 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. 18. Force things at your own risk. Thursday, March 4, 2010
  19. 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. 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
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×