As of Gerrit 2.8 the change screen was redesigned from the ground up. The old change screen is deprecated and will be discontinued in one of the next Gerrit releases.

The design spirit of the new change screen is simplicity: only one patch set is presented on the screen. The list of related changes is always visible and optional elements are moved to pop down boxes.

This is not only a facelift. The main highlights are under the hood:

  • Old style RPC calls are replaced by the REST API

  • The prettify syntax highlighting library was replaced by Codemirror

  • Automatic refresh of open changes

  • Support to download a patch direct in browser: no local repo is needed

  • JS API integration: it was never so easy to add change/revision actions to the UI from a plugin.

This document is intended to help users to switch to the new change screen.

Further information on the topic can be found in the: CodeScreen2 thread on the repo-discuss mailing list.

Configuration

The new change screen is deactivated by default. It can be activated system-wide by changing the gerrit.changeScreen setting to CHANGE_SCREEN2. Users can deactivate it by setting OLD_UI on their user preferences page.

Switching between patch sets

As already mentioned above, the main difference between the old and the new change screen is the fact that only one patch set is presented on the screen.

To switch to other patch sets for the given change, the drop down Revisions box is used on the right upper side of the change header.

Patch sets are always sorted in descending order. The option to switch between ascending and reverse patch set sorting order is not supported on the new change screen.

Download commands

The download commands are moved to the Download drop down box. Patch files can be downloaded as base64 encoded or zipped versions.

Included in

To see the branches a specific change was merged into and the list of the tags a change was tagged with, use the Included In drop down on the change header, to the left of the Revisions drop down.

Note that this list is only visible on merged changes.

Quick approve

The so called Quick approve button is some times confusing. Normal users (i.e. non-maintainers) see this as Verified+1 button to the right of the Reply button.

The button is not always "Verified+1". The button appears if a user has permission to vote the max score in exactly one label that the rules have marked as NEED.

For a maintainer with both Verified+1 and Code-Review+2 powers the button does not appear, as both categories are still marked NEED and the maintainer has permission to use both. If another maintainer scores Code-Review+2, then the button displays as Verified+1. If a verifier scores Verified+1 the button displays as Code-Review+2.

It is important to note that by design, the user cannot provide a comment when using this button, hence the name Quick approve. To provide comments, the Reply button should be used.

Reply button

This button corresponds to the Review button the on patch set panel on the old change screen. The only new feature: the user can optionally send an email during the vote.

Key bindings: "a" to open the drop down. "ESC" to close it.

Edit commit message

To edit the commit message use the Edit Message button on the change header, which will open a drop-down editor box.

Key bindings: "e" to open the drop down. "ESC" to close it.

Star change icon allows to star the change, so that "starredby:self" query can retrieve the starred changes later. If the change is already starred, then clicking the icon again unstars the change.

Key bindings: "s" to star/unstar the change.

Edit change topic

To edit the topic use the edit icon to the right of the topic field.

Key bindings: "t" to open the drop down. "ESC" to close it.

Abandon or Restore changes

When a change is abandoned or restored, a panel appears and a comment message can be provided.

Working with draft changes and patch sets

When a change or a patch set is a draft, then three additional buttons appear on the action panel: Publish, Delete Revision, and Delete Change. In the Revisions drop down a "(DRAFT)" suffix is added to the patch set number to indicate that the patch set is a draft.

Highlight draft comments

If a patch set has draft comments that weren’t published yet, then that patch set is marked on the list in the Revisions drop down list. In addition a red "draft" prefix appears on the filenames in the file table.

Codemirror

On the user preferences page, Side By Side or Unified Diff view can be configured. Use the "/" key to start the CodeMirror search, like in vim.

Key bindings are not customizable at the moment. They may be added in the future.

Range comments are supported on Codemirror’s Side By Side screen. Highlight lines with the mouse and then click the bottom-most line number to create a range comment for the highlighted lines.

Reviewers

Reviewer are split into two groups: Reviewers who actually voted on the change in the Reviewers field, and reviewers, who were added to the change but didn’t vote yet in the CC field.

The votes per category are listed above the File list.

To add a reviewer, use the [+] button to the right of the CC field. Typing into the pop-up text field activates auto completion of user or group names.

To remove reviewers click on the x icon in the reviewer’s "chip".

Key bindings: "c" to add a reviewer. "ESC" to close the drop down.

Auto refresh of change data

On the new change screen polling for updates to the currently open change is activated per default. For example, if another user votes or comments on the same change, then a popup window appears on the bottom right corner of the screen to notify the user that the change was updated.

The default delay is 30 seconds. It can be configured with the change.updateDelay setting.

Dependencies and dependent changes are listed in the Related Changes drop down.

Key bindings: "J" & "K" to navigate between the related changes. "O" to open the currently selected related change.

File table

The user can now manually toggle the reviewed flag per file using the check box to the left of the filename.

Key bindings: "j" & "k" to navigate in the file table, and "r" to toggle the reviewed flag.

Diff against

In the Diff against dropdown, base reference version can be selected. On selecting an entry the file table list is reloaded and shows only the files that were changed compared to this reference version. The selected revision is passed to the side by side view, so that code mirror windows "remember" the base reference version choice made on the change screen.

History

The history table shows change messages and inline file comments. Expand All and Collapse All buttons show/hide the messages.

Key bindings: "x" expands all messages, "z" collapses them again.

Missing features

Several features have not been implemented yet:

  • Permalink a change

  • Allow to see if a reviewer can’t vote on a label

  • Change diff view preferences