Gerrit Workshop

1,539 views

Published on

Gerrit is the review software used in the TYPO3 ecosphere.

These slides were used to introduce the participants of the workshop into the Gerrit workflow and the concept of software reviews.

Workshop at the TYPO3 Developer Days Munich, 2012
http://t3dd12.typo3.org

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

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

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • - overview of change sets\n- details\n- voting\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Gerrit Workshop

    1. 1. Developer Days München 12. - 15. April 2012Making you a GIT hero Part 3/3: Gerrit
    2. 2. Developer Days München 12. - 15. April 2012Your PresenterHi,I’m Steffen!Please give me feedbackabout this presentation!steffen.gebert@typo3.org@StGebert on Twitter
    3. 3. Developer Days München 12. - 15. April 2012 I live in Würzburg Studied Computer science therePhoto by Juergen Mangelsdorf (CC)http://www.flickr.com/photos/22084572@N07/2217991811/
    4. 4. Developer Days München 12. - 15. April 2012 Day-to-day Job Now PhD student and researcher • Network and Cloud Security • Core Network RoutingPhoto by Paul Soler-Moya (CC)http://www.flickr.com/photos/40351463@N00/3927504524/
    5. 5. Developer Days München 12. - 15. April 2012TYPO3 Core Team Member
    6. 6. Developer Days München 12. - 15. April 2012TYPO3.org Server Admin Team Member
    7. 7. Developer Days München 12. - 15. April 2012Questions! • Who already worked with Git (besides yesterday/today)? • Who already worked with Gerrit? • Who already has a Gerrit setup? • Who knows, what Gerrit is?
    8. 8. Developer Days München 12. - 15. April 2012What’s Gerrit? • Gerrit is for Quality Assurance! • Make sure that the author does it
    9. 9. Developer Days München 12. - 15. April 2012Preparation • Please clone the Sandbox project: git clone --recursive git://git.typo3.org/ Sandbox.git
    10. 10. Developer Days München 12. - 15. April 2012About Gerrit • Web-based Code Review Software • Git server, SSH server • Written in Java • Developed by Google (for Android Development) • Relies on Git as Version Control System (VCS) • Gatekeeper in front of the Git repositories • .. and the reason, why TYPO3 migrated to Git
    11. 11. Developer Days München 12. - 15. April 2012Git ArchitectureGit with Gerrit Architecture
    12. 12. Developer Days München 12. - 15. April 2012Gerrit Usage in TYPO3 worldGerrit is used by • TYPO3v4/v6 • workspaces, extbase, fluid, .. Subprojects • FLOW3 • Phoenix • Few elitist extensions • news, community, extension_builder • Working hard on support for community extensions!
    13. 13. Developer Days München 12. - 15. April 2012Ages ago... • Reviews using the TYPO3 Core Team Mailing list
    14. 14. Developer Days München 12. - 15. April 2012Reviews through Mailing Lists
    15. 15. Developer Days München 12. - 15. April 2012Reviews through Mailing ListsKeeping track of changes was.. well.. a manual job!
    16. 16. Developer Days München 12. - 15. April 2012Back to Gerrit! • that’s where you find it: • https://review.typo3.org
    17. 17. Developer Days München 12. - 15. April 2012Software Reviews • All code contains errors, more or less • Easier to spot them with four, six, eight, ..., eyes • No code must be merged without review • Review types • Functional review • Code review
    18. 18. Developer Days München 12. - 15. April 2012Functional Review • Make sure that a change • fixes the bug / implements the feature as advertised • doesn’t hurt other functionality • is robust • Testing methods • Automatic (Selenium, Unit Test) • Manual (your browser + your mouse + your brain)
    19. 19. Developer Days München 12. - 15. April 2012Code Review • The change to the code • is correct (it does, what it should do) • is well-coded (robust, performant, etc.) • respects Coding Guide Lines (TYPO3 CGL) • Testing methods • Automatic: CGL, Unit tests • Manual: Reading the code
    20. 20. Developer Days München 12. - 15. April 2012Required Votes • Votings required to merge a change: Code Verified Review Team ✓ (+2) ✓ (+2) Member Anyone +1 +1 • More reviews are welcome! • Merging happens by team member pressing a “Submit”
    21. 21. Developer Days München 12. - 15. April 2012Git Help • The best™ Git Documentation ever: • http://wiki.typo3.org/Git • Please set up the Gerrit commit hook • Contribution Walkthrough with Command Line
    22. 22. Developer Days München 12. - 15. April 2012 Pushing a Change to Gerrit git push origin HEAD:refs/for/<release-branch> the remote to push to(could be also github, etc.)
    23. 23. Developer Days München 12. - 15. April 2012Pushing a Change to Gerrit git push origin HEAD:refs/for/<release-branch> state of your pseudo-branch target branch working tree in Gerrit (master, TYPO3_4-6)

    ×