This avoids needing to call set-project-parent immediately after creating the project. Change-Id: I9300e10d247ccf17ed4ad5a48ebc2e78072b09ca Signed-off-by: Shawn O. Pearce <sop@google.com>
		
			
				
	
	
		
			144 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			144 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
gerrit create-project
 | 
						|
=====================
 | 
						|
 | 
						|
NAME
 | 
						|
----
 | 
						|
gerrit create-project - Create a new hosted project
 | 
						|
 | 
						|
SYNOPSIS
 | 
						|
--------
 | 
						|
[verse]
 | 
						|
'ssh' -p <port> <host> 'gerrit create-project' \
 | 
						|
\--name <NAME> \
 | 
						|
[--branch <REF>] \
 | 
						|
[\--owner <GROUP> ...] \
 | 
						|
[\--parent <NAME>] \
 | 
						|
[\--description <DESC>] \
 | 
						|
[\--submit-type <TYPE>] \
 | 
						|
[\--use-contributor-agreements] \
 | 
						|
[\--use-signed-off-by]
 | 
						|
 | 
						|
DESCRIPTION
 | 
						|
-----------
 | 
						|
Creates a new bare Git repository under `gerrit.basePath`, using
 | 
						|
the project name supplied.  The newly created repository is empty
 | 
						|
(has no commits), but is registered in the Gerrit database so that
 | 
						|
the initial commit may be uploaded for review, or initial content
 | 
						|
can be pushed directly into a branch.
 | 
						|
 | 
						|
If replication is enabled, this command also connects to each of
 | 
						|
the configured remote systems over SSH and uses command line git
 | 
						|
on the remote system to create the empty repository.
 | 
						|
 | 
						|
 | 
						|
ACCESS
 | 
						|
------
 | 
						|
Caller must be a member of any of the groups defined by
 | 
						|
repository.*.createGroup in gerrit.config.
 | 
						|
 | 
						|
If there is no such declaration, caller is required to be a member
 | 
						|
of the privileged 'Administrators' group.
 | 
						|
 | 
						|
SCRIPTING
 | 
						|
---------
 | 
						|
This command is intended to be used in scripts.
 | 
						|
 | 
						|
OPTIONS
 | 
						|
-------
 | 
						|
\--name::
 | 
						|
	Required; name of the project to create.  If name ends with
 | 
						|
	`.git` the suffix will be automatically removed.
 | 
						|
 | 
						|
\--branch::
 | 
						|
	Name of the initial branch in the newly created project.
 | 
						|
	Defaults to 'master'.
 | 
						|
 | 
						|
\--owner::
 | 
						|
	Name of the group(s) which will initially own this repository.
 | 
						|
	The specified group(s) must already be defined within Gerrit.
 | 
						|
	Several groups can be specified on the command line.
 | 
						|
+
 | 
						|
Defaults to what is specified by repository.*.ownerGroup
 | 
						|
in gerrit.config. If no such declaration(s) exist,
 | 
						|
repository.*.createGroup will be used. If they don't exist,
 | 
						|
`Administrators` will be used.
 | 
						|
 | 
						|
\--parent::
 | 
						|
	Name of the parent project to inherit access rights
 | 
						|
	through. If not specified, the parent is set to the default
 | 
						|
	project `\-- All Projects \--`.
 | 
						|
 | 
						|
\--description::
 | 
						|
	Initial description of the project.  If not specified,
 | 
						|
	no description is stored.
 | 
						|
+
 | 
						|
Description values containing spaces should be quoted in single quotes
 | 
						|
(\').  This most likely requires double quoting the value, for example
 | 
						|
`\--description "\'A description string\'"`.
 | 
						|
 | 
						|
\--submit-type::
 | 
						|
	Action used by Gerrit to submit an approved change to its
 | 
						|
	destination branch.  Supported options are:
 | 
						|
+
 | 
						|
* FAST_FORWARD_ONLY: produces a strictly linear history.
 | 
						|
* MERGE_IF_NECESSARY: create a merge commit when required.
 | 
						|
* MERGE_ALWAYS: always create a merge commit.
 | 
						|
* CHERRY_PICK: always cherry-pick the commit.
 | 
						|
 | 
						|
+
 | 
						|
Defaults to MERGE_IF_NECESSARY.  For more details see
 | 
						|
link:project-setup.html#submit_type[Change Submit Actions].
 | 
						|
 | 
						|
\--use-contributor-agreements::
 | 
						|
	If enabled, authors must complete a contributor agreement
 | 
						|
	on the site before pushing any commits or changes to this
 | 
						|
	project.  Disabled by default.
 | 
						|
 | 
						|
\--use-signed-off-by::
 | 
						|
	If enabled, each change must contain a Signed-off-by line
 | 
						|
	from either the author or the uploader in the commit message.
 | 
						|
	Disabled by default.
 | 
						|
 | 
						|
 | 
						|
EXAMPLES
 | 
						|
--------
 | 
						|
Create a new project called `tools/gerrit`:
 | 
						|
 | 
						|
====
 | 
						|
	$ ssh -p 29418 review.example.com gerrit create-project --name tools/gerrit.git
 | 
						|
====
 | 
						|
 | 
						|
Create a new project with a description:
 | 
						|
 | 
						|
====
 | 
						|
	$ ssh -p 29418 review.example.com gerrit create-project --name tool.git --description "'Tools used by build system'"
 | 
						|
====
 | 
						|
 | 
						|
Note that it is necessary to quote the description twice.  The local
 | 
						|
shell needs double quotes around the value to ensure the single quotes
 | 
						|
are passed through SSH as-is to the remote Gerrit server, which uses
 | 
						|
the single quotes to delimit the value.
 | 
						|
 | 
						|
REPLICATION
 | 
						|
-----------
 | 
						|
The remote repository creation is performed by a Bourne shell script:
 | 
						|
 | 
						|
====
 | 
						|
  mkdir -p '/base/project.git' && cd '/base/project.git' && git init --bare && git update-ref HEAD refs/heads/master
 | 
						|
====
 | 
						|
 | 
						|
For this to work successfully the remote system must be able to run
 | 
						|
arbitrary shell scripts, and must have `git` in the user's PATH
 | 
						|
environment variable.  Administrators could also run this command line
 | 
						|
by hand to establish a new empty repository.
 | 
						|
 | 
						|
SEE ALSO
 | 
						|
--------
 | 
						|
 | 
						|
* link:config-replication.html[Git Replication/Mirroring]
 | 
						|
* link:project-setup.html[Project Setup]
 | 
						|
 | 
						|
GERRIT
 | 
						|
------
 | 
						|
Part of link:index.html[Gerrit Code Review]
 |