Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
The   Git    source code control system



 
 
 
 
 
 
 
 Dueling Coders


          by Matthew McCullough & Tim Berglund
SVN Git
Why Another?
Not just for versioning source
Distributed Version Control Systems (DVCS)

Value of centralized + decentraliz...
Git Going
Getting Git

• Cygwin
• MacPorts
• Distro-specific package manager
• Binaries
Username Setup


git config --global user.email matthewm@ambientideas.com
URL Styles

• Public Clone URL (Git Protocol)
 git://github.com/matthewmccullough/helloworld.git


• Private Clone Path (S...
Cloning Repos


• Command to retrieve a remote repo
• Works against Git and SVN
IDE Tools

• EGit, Eclipse Plugin Update Site
  http://www.jgit.org/update-site
  http://github.com/guides/using-the-egit-...
Sharing Repos
Serve


git help daemon
Serve


git daemon --export-all --base-path=.
Free Git Hosting

Github
http://github.com
     Gitorious
     http://gitorious.org
Sharing Demo
Add, Checkin
git add *.java

git commit -m‘Did some work’
Switch Branch,
       Checkout
git branch ANEWBRANCH

git checkout ANEWBRANCH
Push

git push origin master
Pull

git pull origin master
Branching
Just Branches?
Core idea of DVCS
Same as always, but less painful
Branches are local
Branch for every feature
Main is for ...
Branching Demo
Merge
git merge ANEWBRANCH
(destination = current branch)
Conflicts
Squash
git merge --squash ANEWBRANCH
(destination = current branch)
Tag

git tag VERSION1.0
Cherry Pick
git cherry-pick -r e8ac5ed693
(destination = current branch)
Resources
Documentation


• Wiki has the most up to date info.
  http://git.or.cz/gitwiki/
  InterfacesFrontendsAndTools
How To Guides


• http://github.com/guides/home
Quick Reference


• http://zrusin.blogspot.com/2007/09/git-
  cheat-sheet.html
Q&A
Upcoming SlideShare
Loading in …5
×

Git - Intro to the Basics of DVCS

13,626 views

Published on

A quick intro to the basics of the Git source code control system and Distributed Version Control Systems (DVCS)

Published in: Technology, Design

Git - Intro to the Basics of DVCS

  1. The Git source code control system Dueling Coders by Matthew McCullough & Tim Berglund
  2. SVN Git
  3. Why Another? Not just for versioning source Distributed Version Control Systems (DVCS) Value of centralized + decentralized Easy merging from many branches Doesn’t pollute 100,000 artifacts
  4. Git Going
  5. Getting Git • Cygwin • MacPorts • Distro-specific package manager • Binaries
  6. Username Setup git config --global user.email matthewm@ambientideas.com
  7. URL Styles • Public Clone URL (Git Protocol) git://github.com/matthewmccullough/helloworld.git • Private Clone Path (SSH Protocol) git@github.com:matthewmccullough/helloworld.git • Filesystem Path /users/mccm06/projects/helloworld.git
  8. Cloning Repos • Command to retrieve a remote repo • Works against Git and SVN
  9. IDE Tools • EGit, Eclipse Plugin Update Site http://www.jgit.org/update-site http://github.com/guides/using-the-egit-eclipse-plugin-with-github • Git4Idea Get via plugins menu • Netbeans http://git.or.cz/gitwiki/NetBeansPlugin
  10. Sharing Repos
  11. Serve git help daemon
  12. Serve git daemon --export-all --base-path=.
  13. Free Git Hosting Github http://github.com Gitorious http://gitorious.org
  14. Sharing Demo
  15. Add, Checkin git add *.java git commit -m‘Did some work’
  16. Switch Branch, Checkout git branch ANEWBRANCH git checkout ANEWBRANCH
  17. Push git push origin master
  18. Pull git pull origin master
  19. Branching
  20. Just Branches? Core idea of DVCS Same as always, but less painful Branches are local Branch for every feature Main is for generals
  21. Branching Demo
  22. Merge git merge ANEWBRANCH (destination = current branch)
  23. Conflicts
  24. Squash git merge --squash ANEWBRANCH (destination = current branch)
  25. Tag git tag VERSION1.0
  26. Cherry Pick git cherry-pick -r e8ac5ed693 (destination = current branch)
  27. Resources
  28. Documentation • Wiki has the most up to date info. http://git.or.cz/gitwiki/ InterfacesFrontendsAndTools
  29. How To Guides • http://github.com/guides/home
  30. Quick Reference • http://zrusin.blogspot.com/2007/09/git- cheat-sheet.html
  31. Q&A

×