e369eeee95
Change-Id: I687a0efcb603912a96406876f8f987512d46e449
152 lines
4.2 KiB
Plaintext
152 lines
4.2 KiB
Plaintext
= gerrit ls-projects
|
|
|
|
== NAME
|
|
gerrit ls-projects - List projects visible to caller.
|
|
|
|
== SYNOPSIS
|
|
[verse]
|
|
--
|
|
_ssh_ -p <port> <host> _gerrit ls-projects_
|
|
[--show-branch <BRANCH> ...]
|
|
[--description | -d]
|
|
[--tree | -t]
|
|
[--type {code | permissions | all}]
|
|
[--format {text | json | json_compact}]
|
|
[--all]
|
|
[--limit <N>]
|
|
[--has-acl-for GROUP]
|
|
--
|
|
|
|
== DESCRIPTION
|
|
Displays the list of project names, one per line, that the
|
|
calling user account has been granted 'READ' access to.
|
|
|
|
If the caller is a member of the privileged 'Administrators'
|
|
group, all projects are listed.
|
|
|
|
== ACCESS
|
|
Any user who has SSH access to Gerrit.
|
|
|
|
== SCRIPTING
|
|
This command is intended to be used in scripts.
|
|
|
|
== OPTIONS
|
|
--show-branch::
|
|
-b::
|
|
Branch for which the command will display the sha of each project.
|
|
The command may have multiple --show-branch parameters, in this case
|
|
sha will be shown for each of the branches.
|
|
If the user does not have READ access to some branch or the branch does not
|
|
exist then stub (40 `-` symbols) is shown.
|
|
If the user does not have access to any branch in the project then the
|
|
whole project is not shown.
|
|
|
|
--description::
|
|
-d::
|
|
Allows listing of projects together with their respective
|
|
description.
|
|
+
|
|
For text format output, all non-printable characters (ASCII value 31 or
|
|
less) are escaped according to the conventions used in languages like C,
|
|
Python, and Perl, employing standard sequences like `\n` and `\t`, and
|
|
`\xNN` for all others. In shell scripts, the `printf` command can be
|
|
used to unescape the output.
|
|
|
|
--tree::
|
|
-t::
|
|
Displays project inheritance in a tree-like format.
|
|
This option does not work together with the show-branch option.
|
|
|
|
--type::
|
|
Display only projects of the specified type. If not
|
|
specified, defaults to `all`. Supported types:
|
|
+
|
|
--
|
|
`code`:: Any project likely to contain user files.
|
|
`permissions`:: Projects created with the `--permissions-only` flag.
|
|
`all`:: Any type of project.
|
|
--
|
|
|
|
--format::
|
|
What output format to display the results in.
|
|
+
|
|
--
|
|
`text`:: Simple text based format.
|
|
`json`:: Map of JSON objects describing each project.
|
|
`json_compact`:: Minimized JSON output.
|
|
--
|
|
|
|
--all::
|
|
Display all projects that are accessible by the calling user
|
|
account. Besides the projects that the calling user account has
|
|
been granted 'READ' access to, this includes all projects that
|
|
are owned by the calling user account (even if for these projects
|
|
the 'READ' access right is not assigned to the calling user
|
|
account).
|
|
|
|
--limit::
|
|
Cap the number of results to the first N matches.
|
|
|
|
--has-acl-for::
|
|
Display only projects on which access rights for this group are
|
|
directly assigned. Projects which only inherit access rights for
|
|
this group are not listed.
|
|
+
|
|
With this option you can find out on which projects a group is used.
|
|
|
|
== HTTP
|
|
This command is also available over HTTP, as `/projects/` for
|
|
anonymous access and `/a/projects/` for authenticated access.
|
|
Named options are available as query parameters. Results can
|
|
be limited to projects matching a prefix by supplying the prefix
|
|
as part of the URL, for example `/projects/external/` lists only
|
|
projects whose name start with the string `external/`.
|
|
|
|
Over HTTP the `json_compact` output format is assumed if the client
|
|
explicitly asks for JSON using HTTP header `Accept: application/json`.
|
|
When any JSON output format is used on HTTP, readers must skip the
|
|
first line produced. The first line is a garbage JSON string crafted
|
|
to prevent a browser from executing the response in a script tag.
|
|
|
|
Output will be gzip compressed if `Accept-Encoding: gzip` was used
|
|
by the client in the request headers.
|
|
|
|
== EXAMPLES
|
|
|
|
List visible projects:
|
|
----
|
|
$ ssh -p 29418 review.example.com gerrit ls-projects
|
|
platform/manifest
|
|
tools/gerrit
|
|
tools/gwtorm
|
|
|
|
$ curl http://review.example.com/projects/
|
|
platform/manifest
|
|
tools/gerrit
|
|
tools/gwtorm
|
|
|
|
$ curl http://review.example.com/projects/tools/
|
|
tools/gerrit
|
|
tools/gwtorm
|
|
----
|
|
|
|
Clone any project visible to the user:
|
|
----
|
|
for p in `ssh -p 29418 review.example.com gerrit ls-projects`
|
|
do
|
|
mkdir -p `dirname "$p"`
|
|
git clone --bare "ssh://review.example.com:29418/$p.git" "$p.git"
|
|
done
|
|
----
|
|
|
|
== SEE ALSO
|
|
|
|
* link:access-control.html[Access Controls]
|
|
|
|
GERRIT
|
|
------
|
|
Part of link:index.html[Gerrit Code Review]
|
|
|
|
SEARCHBOX
|
|
---------
|