View Source

h2. Prerequisites
[Repo|http://source.android.com/source/version-control.html] is a tool which is built on top of Git. QuickBuild utilizes the _repo_ command to interact with remote git-repo repository. If this command is not in system path, you will need to specify location of the command by configuring Repo plugin as below:

!repo-plugin.png!

Further more, git-repo command (repo) location can be specified on a per-node basis by following below steps:
# Open Repo plugin setting page and define the repo path property as:
{code}
${node.getAttribute("repoPath")}
{code}
# For each node that does not have git-repo on system path, define the user attribute _repoPath_ to point to the actual repo command path like below:

!repo-path.png!

*NOTE:* example above is just for demonstration, you can use any other user attribute name instead of _repoPath_.

{note}
As git-repo is built on top of git, the Git plugin and git command should be also configured properly. Please refer to [Working with Git] page for details.
{note}

h2. Creating a Repo Repository
You may refer to [this page|Scm Support Overview] on how to add a repository.

h3. Supported URL prefixes
Below URL prefixes are supported:

* ssh://host.\[:port]/path/to/repo.git/
* git://host.xz\[:port]/path/to/repo.git/
* http\[s]://host.xz\[:port]/path/to/repo.git/
* ftp\[s]://host.xz\[:port]/path/to/repo.git/
* rsync://host.xz/path/to/repo.git/.

If *https* is used, and your credential need password, you need first add the credential manually to the nodes which you want check out code to.
If *ssh* is used, please use public key without password for authorization and you need not specify the password when you create the repository. You can reference your SSH manual on how to create public key without password.

h2. {anchor:proof build}Proof build support

{note}
The proof build does not support, please use git proof build instead.
{note}