/external_jbirdvegas_mGerrit

mGerrit is a Gerrit instance viewer

Primary LanguageJava

mGerrit
=======

Gerrit instance viewer supporting the most popular Android ROMs.
Supports tracking the Gerrit Instances for:
- AOKP
- AOSP
- CarbonROM
- CM
- Gerrit Review
- Omni
- PAC-man
- PA
- Add your own...

View commits by status Reviewable (Open), Merged, Abandoned;
Quickly and easily view commit message, author, owner, committer, files changed and approvals and more. Quickly view diffs in browser.
Simple and easy to use UI makes casual gerrit code review change viewing enjoyable.

Open source: https://github.com/aokp/external_jbirdvegas_mGerrit

This app is included in the Android Open Kang Project (ROMControl > About > AOKP Code Review).

Thanks AOKP translators for the translations! We have the best support community in Android!

Simplified Chinese translations by YULIANGMAX
Czech translation by Petr Reznicek (kecinzer)


Change List Searching
-------------------
Searching the change lists, either the 'Review', 'Merged' or 'Abandoned' tabs is designed to mimic the functionality in the Gerrit
 web interface. As each change contains alot of different data, Gerrit uses what are known as operators. To avoid confusing these
 with what they call boolean operators we will call these "keywords".

Keywords: Act as restrictions on the search. As more keywords are added to the same query string, they further restrict the returned
 results.

As an example, searching for "subject:warnings" will return a list of chnages where the commit subject contains the string "warnings"
 in the locally stored changes for the current tab.

Note: these search queries operate on the data stored locally in the database and do not query the Gerrit server. It is recomended
 to refresh the data before quering to make sure the most recent changes will be available to be searched.
Currently, it is required to re-submit the search query when changing tabs as each one operates independently.

Supported keywords
~~~~~~~~~~~~~~~~~~
Currently the following keywords are supported:

change:'ID'; changeid:'ID'
The change-Id that was scraped out of the commit message. Performs a partial match, so only the first few characters need to be specified.

message:'MESSAGE'; subject:'MESSAGE'; intitle:'MESSAGE'
Changes that match MESSAGE arbitrary string in the first line of the commit message. The string MESSAGE can be quoted (") which will
 only show changes that contain exactly the string MESSAGE. If the string is unquoted and contains spaces, only the first word will
 be used.

owner:'USER'
Changes originally submitted by USER. Identifier that uniquely identifies one account. The user can be:
- a string of the format "Full Name <email@example.com>"
- just the email address ("email@example")
- a full name if it is unique ("Full Name")
- an account ID ("18419")

project:'PROJECT'
Changes occurring in PROJECT. Exact match only.

topic:'TOPIC'
Changes whose designated topic at upload was TOPIC. This is often combined with branch: and project: keywords to select all related changes in a series.

branch:'BRANCH'
Changes for BRANCH. This is the short name shown in the web interface without the 'refs/heads/' prefix.

age:'OP''AGE'
    Amount of time that has expired since the change was last updated with a review comment or new patch set. Unlike the Gerrit web interface, this supports both specifing absolute and relative times.
Absolute:
 'AGE' must be of a form specified by the ISO standard, where the date is mandatory and the time is optional. YYYY-MM-DDTHH:mm:ss fits this format. Should be in server time as no datetime conversion is performed.
Relative:
'AGE' can be provided as a period of time since the current time, for example to view changes 2 days ago use:
	age:"2 days"
The age must be specified to include a unit suffix, for example "age:2d"
The supported unit suffices are:
    -    s, sec, secs, second, seconds
    -   m, min, mins, minute, minutes
    -   h, hr, hrs, hour, hours
    -   d, day, days
    -   w, week, weeks
    -   mon, mons, mth, mths, month, months
    -   y, yr, yrs, year, years
Multiple units can be specified in a single query, but they must be seperated with a space. The order of the units is not important. A space between the unit and its suffix is optional. 
The following query is valid:
	age:">2 years 4 days 3w  1d 2m"

The supported operators are:
    - '<': Search for changes earlier than (before) the given time
    - '>': Search for changes later than (after) the given time
    - '<=': Search for changes earlier than or equal to the given time
    - '>=': Search for changes later than or equal to the given time
    - '=': Default. Search for changes equal to the given time give or take one unit from the shortest time interval. For example the search:
	age:"=5 weeks 2 days"	is equivilant to	age:">5 weeks 1 days" age:"<5 weeks 3 days"
Note: Specifying the same unit multiple times in a single keyword stacks, with the value accumulating. For example:
	age:"5 weeks 2w"		is equivilant to	age:"7 weeks"


License
-------
mGerrit is licensed as Apache v2
/*
 * Copyright (C) 2013 Android Open Kang Project (AOKP)
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.


Building
--------
mGerrit building instructions (from base of repository):
 ANT: ant clean debug
 gradle: gradle clean build
 
 gradle 
 requires Build Tools revision 19.1.0


AOKP
----
mGerrit's AOKP Embeded version:
   This software comes included in the AOKP firmware stack. The apk is included
as a signed prebuilt apk.  This allows updating from the PlayStore, avoids
provider authority collisions and removes mGerrit from AOKP version dependancy.

To find the prebuilt apk please see $TOP/vendor/aokp/prebuilt/common/mGerrit.apk