Eclipse Hacker’s Matthias Sohn (SAP)matthias.sohn@sap                                                                     ...
Git … a distributed revision control system built by the Linux project to facilitate code review Distributed means no cent...
Git is mature and popular  … Git is widely used and is the most popular  distributed version control system      Eclipse H...
Git use is growingGoogle trend search in US:                                                                        http:/...
History Git @ Eclipse2005         Linus Torvalds starts Git2006         Shawn Pearce starts JGit2009         Eclipse decid...
Why did Eclipse move? Git increases developer productivity Git makes collaboration easier Gerrit Review is great for Contr...
Git in Java JGit is a lightweight Java library implementing Git • http://www.eclipse.org/jgit/ EGit is an Eclipse Team pro...
Github• Became largest Forge• Free for public repositories• EGit has GitHub connector        Eclipse Hacker’s Guide to the...
Modern Code Review – What is it ?                                                                        Guido van Rossum ...
Code Review – Benefits                                                    Guido van Rossum [1] Four eyes catch more bugs  ...
Gerrit Gerrit Code Review                                                                                         git    g...
Integration with EGitGerrit is a Git servero any Git implementation can work with GerritEGit simplifies work with Gerrito ...
Gerrit - Workflow     Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
Gerrit Review UI                                                                 http://egit.eclipse.org/r/#change,825Ecli...
Gerrit – Eclipse IntegrationMylyn Gerrit Connector• Task list integration• Review editor,  inline comments• Publishing rev...
DEMO Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
Conclusion DVCS like Git are powerful Git supports convenient branching and merging Git is very fast and scales well Gerri...
Q&A Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
Upcoming SlideShare
Loading in …5
×

Eclipse Hackers Guide to the Git Universe - Eclipse democamp Vienna 2011-12-02

994 views
946 views

Published on

Presentation held at Eclipse democamp Vienna on 2012-12-02

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

  • Be the first to like this

No Downloads
Views
Total views
994
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Eclipse Hackers Guide to the Git Universe - Eclipse democamp Vienna 2011-12-02

  1. 1. Eclipse Hacker’s Matthias Sohn (SAP)matthias.sohn@sap Guide to the .com twitter: @masohn Git Universe Developing with EGit and Friends http://eclipse.org/jgit http://eclipse.org/egit http://code.google.com/p/gerritbackground photo courtesy of Eclipse Hacker’s Guide to the Git Universe | © NASA http://www.nasa.gov/multimedia/guidelines/index.html 2011 by M. Sohn
  2. 2. Git … a distributed revision control system built by the Linux project to facilitate code review Distributed means no central repository • No central authority! • Easy offline usage • Easy to branch a project • Protected against manipulation by cryptographic hashes Really good at merging • Coordination only needed "after the fact” • Easier to rejoin (or refresh) branches Structured around commits (i.e. patches) • Tools for identifying problem commits (git bisect) • Tools for restructuring branches w/ specific commits Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  3. 3. Git is mature and popular … Git is widely used and is the most popular distributed version control system Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  4. 4. Git use is growingGoogle trend search in US: http://aniszczyk.org/2011/11/23/apache-and-politics-over-code/ Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  5. 5. History Git @ Eclipse2005 Linus Torvalds starts Git2006 Shawn Pearce starts JGit2009 Eclipse decides on Git as replacement for CVS/SVN JGit/EGit move to eclipse.org, SAP joins3/2010 EGit 0.7 (first release at Eclipse)9/2011 EGit 1.1 (Indigo SR1)12/2011 Eclipse Git adoption: EGit 1.2 Gerrit hosted by Eclipse12/2012 Eclipse will retire CVS Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  6. 6. Why did Eclipse move? Git increases developer productivity Git makes collaboration easier Gerrit Review is great for Contributors Github is the most popular coding platform Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  7. 7. Git in Java JGit is a lightweight Java library implementing Git • http://www.eclipse.org/jgit/ EGit is an Eclipse Team provider for Git based on JGit • http://www.eclipse.org/egit/ Gerrit Code Review is a Git server based on JGit • permissions and review workflow • http://code.google.com/p/gerrit Gitblit is a Git server based on JGit • browsing (like GitWeb), statistics and RSS feeds • http://code.google.com/p/gitblit/ Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  8. 8. Github• Became largest Forge• Free for public repositories• EGit has GitHub connector Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  9. 9. Modern Code Review – What is it ? Guido van Rossum [1] When one developer writes code, another developer is asked to review that code A careful line-by-line critique Happens in a non-threatening context Goal is cooperation, not fault-finding Integral part of coding process Otherwise this will happen: Debugging someone elses broken code – Involuntary code review: Not so good; emotions may flare [1] http://code.google.com/p/rietveld/downloads/detail?name=Mondrian2006.pdf Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  10. 10. Code Review – Benefits Guido van Rossum [1] Four eyes catch more bugs o Catch bugs early to save hours of debugging Mentoring of new developers / contributors o Learn from mistakes without breaking stuff Establish trust relationships o Prepare for more delegation Good alternative to pair programming o asynchronous and across locations Coding standards o Keep overall readability & code quality high [1] http://code.google.com/p/rietveld/downloads/detail?name=Mondrian2006.pdf Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  11. 11. Gerrit Gerrit Code Review git git git git master change 12 submit accepted change 10 change 12 change 23 push improved fetch change 23fetch master change 10 to try itto getupdates Developer PC Developer PC git git git git Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  12. 12. Integration with EGitGerrit is a Git servero any Git implementation can work with GerritEGit simplifies work with Gerrito fetching a changeo automatic "push to Gerrit" configurationMylyn Reviews has a Gerrit connector Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  13. 13. Gerrit - Workflow Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  14. 14. Gerrit Review UI http://egit.eclipse.org/r/#change,825Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  15. 15. Gerrit – Eclipse IntegrationMylyn Gerrit Connector• Task list integration• Review editor, inline comments• Publishing reviews• EGit integration for fetching changes in review Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  16. 16. DEMO Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  17. 17. Conclusion DVCS like Git are powerful Git supports convenient branching and merging Git is very fast and scales well Gerrit enables a nice code review workflow Code review rocks ! Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn
  18. 18. Q&A Eclipse Hacker’s Guide to the Git Universe | © 2011 by M. Sohn

×