Git and Eclipse - Eclipse DemoCamp Walldorf - 2010-06-22

2,602 views

Published on

Presentation from Eclipse DemoCamp 2010 in Walldorf, Germany - "Git and Eclipse"

Published in: Technology, Sports
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,602
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
44
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Git and Eclipse - Eclipse DemoCamp Walldorf - 2010-06-22

  1. 1.  Gitand Eclipse<br />http://eclipse.org/egit<br />+<br />=<br />Matthias Sohn (SAP)<br />matthias.sohn@sap.com<br />
  2. 2. Git at Eclipse<br />Git is a Distributed Version Control System <br />EGit is an Eclipse Team provider for Git<br />http://www.eclipse.org/egit/<br />JGit is a lightweight Java library implementing Git<br />http://www.eclipse.org/jgit/<br />The goal is to build an Eclipse community around Git. <br />EGit is still beta and we want to establish a feedback loop to improve the tooling.  <br />Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S. Pearce, R. Rosenberg and M. Sohn <br />
  3. 3. Gerrit Code Review<br />Gerrit is a Code Review system based on JGit<br />http://code.google.com/p/gerrit/<br />Also serves as a central git server <br />adding access control and workflow<br />Used by Android, JGit/Egit, …<br />  <br />Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S. Pearce, R. Rosenberg and M. Sohn <br />
  4. 4. 4<br />Git vs. CVS/SVN<br /><ul><li>Distributed
  5. 5. Eachuserhas full history
  6. 6. Ability to work off-line
  7. 7. Fast
  8. 8. Rebasepatcheseasily
  9. 9. Forks happen, deal withit
  10. 10. Powerful mergingallowstouse lots of branches
  11. 11. Centralized
  12. 12. --
  13. 13. --
  14. 14. Slow
  15. 15. Patches gostale
  16. 16. Forksarepainful
  17. 17. Mergingispainful</li></ul>Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S. Pearce, R. Rosenberg and M. Sohn <br />
  18. 18. History JGit/EGit<br />2005    LinusTorvalds starts Git<br />2006    Shawn Pearce starts JGit<br />2009    Eclipse decides on GitJGit/EGit move to eclipse.org SAP joins <br />3/2010 Released 0.7 (first release at Eclipse)              <br />            Diff/Merge Algorithms, Automatic IP Logs<br /> <br />6/2010 Released 0.8 (Helios)<br />            Usability Improvements, Git Repositories View, Tagging<br />9/2010 Planned 0.9 (Helios SR1)<br /> Merge, Synchronize View, .gitignore, Stashing, Staging<br />Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S. Pearce, R. Rosenberg and M. Sohn <br />
  19. 19. Git at Eclipse<br />EGit/JGit developed at http://egit.eclipse.org<br />http://git.eclipse.org/ hosts live Eclipse Git repos<br />Virgo, Mylyn Review, ScalaModules, SWTBot …<br />http://dev.eclipse.org/git/index.html git mirrors for CVS<br /> Read-only copies kept up-to-date<br /> Can clone with git:// or http://<br />Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S. Pearce, R. Rosenberg and M. Sohn <br />
  20. 20. No Free Lunch -- DEMO<br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br />The best way to learn Git is to use Git<br />Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S. Pearce, R. Rosenberg and M. Sohn <br />
  21. 21. Conclusion<br />DVCS like Git are powerful<br />Git supports convenient branching and merging <br /> <br />Git is very fast and scales well<br /> <br />Gerrit enables a nice code review workflow <br />Git is the future SCM of Eclipse<br />Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S. Pearce, R. Rosenberg and M. Sohn <br />
  22. 22. Resources<br />Ask questions on the EGit forum or egit-dev/jgit-dev lists<br />http://git-scm.com/documentation is your friend<br />If you want comedy, watch Linus' talk at Google<br />    http://www.youtube.com/watch?v=4XpnKHJAok8<br />Read the Pro Git book - http://progit.org/book/<br />Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S. Pearce, R. Rosenberg and M. Sohn <br />
  23. 23. Features EGit 0.8<br />Supported<br />Partially supported<br />Not yet supported<br />* planned for 0.9<br /><ul><li>git init / git clone
  24. 24. git add
  25. 25. git status
  26. 26. git commit
  27. 27. git diff
  28. 28. git fetch
  29. 29. git log
  30. 30. git merge *
  31. 31. git rebase
  32. 32. git remote
  33. 33. git pull
  34. 34. git push
  35. 35. git stash *
  36. 36. git branch
  37. 37. git tag
  38. 38. git checkout
  39. 39. git config
  40. 40. git format-patch
  41. 41. git mv / git rm
  42. 42. git reset
  43. 43. .gitignore *
  44. 44. synchronizeview *</li></ul>10<br />

×