Introduction to Gerrit
Gerrit is a web based code review and project management tool for Git based projects.
TYPO3's Gerrit interface is located at https://review.typo3.org.
Gerrit handles the review process and is a gatekeeper in front of the official TYPO3 Git repository on github.com/typo3/typo3 (mirrored from a TYPO3 GitLab instance). Directly pushing to the GitHub (or GitLab) repository is not allowed. Instead every change has to pass a review process in Gerrit, which later pushes the change to the GitLab->GitHub repositories.
Overview of the UI
This chapter will explain the most important parts of the Gerrit UI to you. For most developers, this interface should be mostly self-explanatory. Gerrit also comes with its own help system.
This is a screenshot of an open review on Gerrit. We will go through the parts of the UI next:
- The search box lets you write complex search queries with little coding knowledge. For detailed information on how to use the search, refer to the official documentation on https://review.typo3.org/Documentation/user-search.html. Most people use Forger, because it provides more sophisticated ways to find a review. Look at Find a review on Gerrit for more information.
- The commit message formatted like we explained in "The commit message".
- The Reply Button which you will use to vote on code quality and testing as well as to send comments. We will be covering this button in more detail later.
- The Download Button. You will be using this control to cherry pick a change.
- Other changes related to this change. This can be either due to a similar topic or because the commit summary is related to the change we are currently reviewing.
- The current review status. Here you can see who has voted (and how they voted) on a change. The votes only apply to one given patchset. If a new patchset is uploaded, it must be revoted. Note the +1 by TYPO3com, which means that the automatic testsuite ran successfully.
- All changed files in this current change. You can click every file to take a look at what exactly has changed. There is a select box on top of the file list that allows you to do a diff between patch sets to quickly see what has changed.
- The history of this change. Here you can see comments, new patch sets, votes on a change etc.