commit | bc4757f740c2b288cd211377e1bfb7f5d2a1cf40 | [log] [tgz] |
---|---|---|
author | Dave Borowitz <dborowitz@google.com> | Wed May 02 07:55:22 2018 -0400 |
committer | Dave Borowitz <dborowitz@google.com> | Mon May 14 14:26:50 2018 -0700 |
tree | 4a6fd7201eaa8e2c37cd810ddf6a3be1e4c18b8f | |
parent | 6291a6b18c01a88c318574b8cf30a3674646e20a [diff] |
Clarify ChangeNotesState private/WIP/started bits There were redundant fields in the ChangeNotesState and the contained ChangeColumns. They properly belong in ChangeColumns, since they correspond to actual @Columns in the Change class. Also in the Change class, they are not nullable (they lack "notNull = false"), so remove @Nullable in ChangeColumns as well. A few callers were explicitly depending on the fields in ChangeNotesState rather than in ChangeColumns; those are easily updated. Note that the ChangeNotesState#create method always just passed in a single value for each of these fields, which was then passed to two different constructors, so they were always in sync. The only time when the ChangeNotesState and ChangeColumns might potentially be out of sync is when calling ChangeNotesState#empty, which would pass a non-null value for these bits to the ChangeNotesState constructor and leave the ChangeColumns null. However, this is only used from ChangeNotes when NoteDb is disabled, in which case the ChangeNotesState fields are never exposed to callers. In this case they get these bits by calling the relevant methods on getChange(), which will contain the ReviewDb change (and not have columns populated from NoteDb via ChangeNotesState#copyColumnsTo). Change-Id: Id4771f3e305417dc7f8d2040575d0c6746944946
Gerrit is a code review and project management tool for Git based projects.
Gerrit makes reviews easier by showing changes in a side-by-side display, and allowing inline comments to be added by any reviewer.
Gerrit simplifies Git based project maintainership by permitting any authorized user to submit changes to the master Git repository, rather than requiring all approved changes to be merged in by hand by the project maintainer.
For information about how to install and use Gerrit, refer to the documentation.
Our canonical Git repository is located on googlesource.com. There is a mirror of the repository on Github.
Please report bugs on the issue tracker.
Gerrit is the work of hundreds of contributors. We appreciate your help!
Please read the contribution guidelines.
Note that we do not accept Pull Requests via the Github mirror.
The IRC channel on freenode is #gerrit. An archive is available at: echelog.com.
The Developer Mailing list is repo-discuss on Google Groups.
Gerrit is provided under the Apache License 2.0.
Install Bazel and run the following:
git clone --recursive https://gerrit.googlesource.com/gerrit cd gerrit && bazel build release
The instruction how to configure GerritForge/BinTray repositories is here
On Debian/Ubuntu run:
apt-get update & apt-get install gerrit=<version>-<release>
NOTE: release is a counter that starts with 1 and indicates the number of packages that have been released with the same version of the software.
On CentOS/RedHat run:
yum clean all && yum install gerrit-<version>[-<release>]
On Fedora run:
dnf clean all && dnf install gerrit-<version>[-<release>]
Docker images of Gerrit are available on DockerHub
To run a CentOS 7 based Gerrit image:
docker run -p 8080:8080 gerritforge/gerrit-centos7[:version]
To run a Ubuntu 15.04 based Gerrit image:
docker run -p 8080:8080 gerritforge/gerrit-ubuntu15.04[:version]
NOTE: release is optional. Last released package of the version is installed if the release number is omitted.