Chicago, October 19 - 22, 2010
Getting to know Git
Colin Harrington – Object Partners
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
whoami
Colin Harrington
Senior Consultant
@...
What is Git?
Git is a free & open source, distributed version
control system designed to handle everything from
small to v...
Why Git?
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Why Git?
http://github.com/grails/
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Git != SVN
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Centralized VCS
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Decentralized / Distributed VCS
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Git – SVN Crash Course
http://git-scm.com/course/svn.html
SpringOne 2GX 2010. All rights reserved. Do not distribute witho...
Mind << git basics
start brand new repository:
git init
clone an existing repository:
git clone <git­url>
SpringOne 2GX 20...
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Demo
Mind << git basics
git init
git add .
git commit
git init
git add .
git commit
SpringOne 2GX 2010. All rights reserved. Do...
Mind << git fundamentals
`
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Mind << git fundamentals
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Mind << git fundamentals
SHA hashes
Authorship preservation
Tree Structure!
SpringOne 2GX 2010. All rights reserved. Do no...
Mind << git fundamentals
http://book.git-scm.com/1_the_git_object_model.html
SpringOne 2GX 2010. All rights reserved. Do n...
Porcelain vs Plumbing
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Porcelain vs Plumbing
init
log
rebase
merge
commit
add
checkout
revert
pack
pull
push
status
bisect
clone
diff
grep
tag
br...
Mind << branch
git branch
git branch ­a
git checkout ­b <branchName>
git checkout <existingBranchName>
SpringOne 2GX 2010....
Mind << merge
git merge <branch>
git merge <branch> ­­no­commit
SpringOne 2GX 2010. All rights reserved. Do not distribute...
Mind << clone
git clone <url>
Similar to svn checkout
Clones the entire repository!
Adds a remote
SpringOne 2GX 2010. All ...
Mind << remotes
git branch ­r
git branch ­­track <branch> 
<remote­branch>
git branch ­r ­d <remote­branch>
SpringOne 2GX ...
Mind << working with remotes
Index
Local
Repository
Remote
Repository
Push
Pull
Files on drive
SpringOne 2GX 2010. All rig...
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Demo
Mind << git-svn
clone an entire SVN repository!
git svn clone ­s <url>
git svn clone ­s ­r 1234 <url>
… without -s, etc.
S...
Mind << git-svn
git svn rebase
→ rebases the current branch on the remote-tracked
svn branch (trunk or branches)
git svn f...
Give Back to Grails
http://grails.org/contribute
http://grails.org/Creating+Patches+From+Git
http://grails.org/GitHub+Fork...
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Demo
Resources
http://www.sourcemage.org/Git_Guide
http://git.or.cz/course/svn.html
http://www.youtube.com/watch?v=4XpnKHJAok8
...
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Q&A
SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
Thank you!
Credits

Git logo :: by azizash :: http://azizash.deviantart.com/art/GIT-Logo-95183398

Grails logo :: http://grails.org...
Upcoming SlideShare
Loading in...5
×

Getting To Know Git

1,618

Published on

Git is known as 'the fast version control system' and has gained much popularity in the last couple years for good reason. Grails itself has moved to Git and is now hosted on github - http://github.com/grails.

In this session at SpringOne2gx we spent time getting to know some of the basics of Git and exploring successful tools and workflows. We will also learn how we can utilize git and git-svn to work with grails.

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,618
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
36
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Getting To Know Git

  1. 1. Chicago, October 19 - 22, 2010 Getting to know Git Colin Harrington – Object Partners
  2. 2. SpringOne 2GX 2010. All rights reserved. Do not distribute without permission. whoami Colin Harrington Senior Consultant @ColinHarrington colin.harrington@gmail.com colin.harrington@objectpartners.com
  3. 3. What is Git? Git is a free & open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Every Git clone is a full-fledged repository with complete history and full revision tracking capabilities, not dependent on network access or a central server. Branching and merging are fast and easy to do. – http://git-scm.com/ SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  4. 4. Why Git? SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  5. 5. Why Git? http://github.com/grails/ SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  6. 6. Git != SVN SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  7. 7. Centralized VCS SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  8. 8. Decentralized / Distributed VCS SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  9. 9. Git – SVN Crash Course http://git-scm.com/course/svn.html SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  10. 10. Mind << git basics start brand new repository: git init clone an existing repository: git clone <git­url> SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  11. 11. SpringOne 2GX 2010. All rights reserved. Do not distribute without permission. Demo
  12. 12. Mind << git basics git init git add . git commit git init git add . git commit SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  13. 13. Mind << git fundamentals ` SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  14. 14. Mind << git fundamentals SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  15. 15. Mind << git fundamentals SHA hashes Authorship preservation Tree Structure! SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  16. 16. Mind << git fundamentals http://book.git-scm.com/1_the_git_object_model.html SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  17. 17. Porcelain vs Plumbing SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  18. 18. Porcelain vs Plumbing init log rebase merge commit add checkout revert pack pull push status bisect clone diff grep tag branch SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  19. 19. Mind << branch git branch git branch ­a git checkout ­b <branchName> git checkout <existingBranchName> SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  20. 20. Mind << merge git merge <branch> git merge <branch> ­­no­commit SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  21. 21. Mind << clone git clone <url> Similar to svn checkout Clones the entire repository! Adds a remote SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  22. 22. Mind << remotes git branch ­r git branch ­­track <branch>  <remote­branch> git branch ­r ­d <remote­branch> SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  23. 23. Mind << working with remotes Index Local Repository Remote Repository Push Pull Files on drive SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  24. 24. SpringOne 2GX 2010. All rights reserved. Do not distribute without permission. Demo
  25. 25. Mind << git-svn clone an entire SVN repository! git svn clone ­s <url> git svn clone ­s ­r 1234 <url> … without -s, etc. SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  26. 26. Mind << git-svn git svn rebase → rebases the current branch on the remote-tracked svn branch (trunk or branches) git svn fetch → fetches changes from svn Checkout a remote branch Keep the original branches clean!! Stash, rebase, dcommit, and do it again! SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  27. 27. Give Back to Grails http://grails.org/contribute http://grails.org/Creating+Patches+From+Git http://grails.org/GitHub+Forking+and+Pull+Requests http://jira.codehaus.org/browse/GRAILS
  28. 28. SpringOne 2GX 2010. All rights reserved. Do not distribute without permission. Demo
  29. 29. Resources http://www.sourcemage.org/Git_Guide http://git.or.cz/course/svn.html http://www.youtube.com/watch?v=4XpnKHJAok8 http://www.kernel.org/pub/software/scm/git/docs/user-manual.html http://www.kernel.org/pub/software/scm/git/docs/everyday.html http://book.git-scm.com/ http://whygitisbetterthanx.com/ http://cheat.errtheblog.com/s/git http://progit.org/book/ http://refcardz.dzone.com/refcardz/getting-started-git http://bit.ly/avGDTz … many more valuable resources out there! SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  30. 30. SpringOne 2GX 2010. All rights reserved. Do not distribute without permission. Q&A
  31. 31. SpringOne 2GX 2010. All rights reserved. Do not distribute without permission. Thank you!
  32. 32. Credits  Git logo :: by azizash :: http://azizash.deviantart.com/art/GIT-Logo-95183398  Grails logo :: http://grails.org/Brand  Perl logo :: Criado por O'Reilly :: http://commons.wikimedia.org/wiki/File:Perl.jpg  VLC logo :: illustration (and iteration) by Richard C. G. Øiestad. GNU GPL by Video LAN  Rails logo :: KSEltar :: http://commons.wikimedia.org/wiki/File:Ruby_on_Rails_logo.svg  jQuery logo :: http://commons.wikimedia.org/wiki/File:Logo_jquery_215x53.gif  Linux logo :: gg3po (kde-look.org source) :: http://commons.wikimedia.org/wiki/File:NewTux.svg  Eclipse logo :: http://www.eclipse.org/artwork/  Android logo :: Google and Android's developpers :: http://commons.wikimedia.org/wiki/File:Android_robot.svg SpringOne 2GX 2010. All rights reserved. Do not distribute without permission.
  1. Gostou de algum slide específico?

    Recortar slides é uma maneira fácil de colecionar informações para acessar mais tarde.

×