3e3340d94f
Attribute groups can now be added to manifest include, thus all projects in an included manifest file can easily modify default branch without modifying all projects in that manifest file. For example, the main manifest.xml has an include node contain revision attribute, ``` <include name="include.xml" revision="r1" /> ``` and the include.xml has some projects, ``` <project path="project1_path" name="project1_name" revision="r2" /> <project path="project2_path" name="project2_name" /> ``` With this change, the final manifest will have revision="r1" for project2. ``` <project name="project1_name" path="project1_path" revision="r2" /> <project name="project2_name" path="project2_path" revision="r1" /> ``` Test: added unit tests to cover the inheritance Change-Id: I4b8547a7198610ec3a3c6aeb2136e0c0f3557df0 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/369714 Reviewed-by: Mike Frysinger <vapier@google.com> Commit-Queue: Shuchuan Zeng <zengshuchuan@allwinnertech.com> Tested-by: Shuchuan Zeng <zengshuchuan@allwinnertech.com> |
||
---|---|---|
.github/workflows | ||
docs | ||
hooks | ||
man | ||
release | ||
subcmds | ||
tests | ||
.flake8 | ||
.gitattributes | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.project | ||
.pydevproject | ||
color.py | ||
command.py | ||
completion.bash | ||
editor.py | ||
error.py | ||
event_log.py | ||
fetch.py | ||
git_command.py | ||
git_config.py | ||
git_refs.py | ||
git_ssh | ||
git_superproject.py | ||
git_trace2_event_log.py | ||
gitc_utils.py | ||
hooks.py | ||
LICENSE | ||
main.py | ||
manifest_xml.py | ||
MANIFEST.in | ||
pager.py | ||
platform_utils_win32.py | ||
platform_utils.py | ||
progress.py | ||
project.py | ||
pyproject.toml | ||
README.md | ||
repo | ||
repo_trace.py | ||
requirements.json | ||
run_tests | ||
run_tests.vpython3 | ||
setup.py | ||
ssh.py | ||
SUBMITTING_PATCHES.md | ||
tox.ini | ||
wrapper.py |
repo
Repo is a tool built on top of Git. Repo helps manage many Git repositories, does the uploads to revision control systems, and automates parts of the development workflow. Repo is not meant to replace Git, only to make it easier to work with Git. The repo command is an executable Python script that you can put anywhere in your path.
- Homepage: https://gerrit.googlesource.com/git-repo/
- Mailing list: repo-discuss on Google Groups
- Bug reports: https://bugs.chromium.org/p/gerrit/issues/list?q=component:Applications%3Erepo
- Source: https://gerrit.googlesource.com/git-repo/
- Overview: https://source.android.com/source/developing.html
- Docs: https://source.android.com/source/using-repo.html
- repo Manifest Format
- repo Hooks
- Submitting patches
- Running Repo in Microsoft Windows
- GitHub mirror: https://github.com/GerritCodeReview/git-repo
- Postsubmit tests: https://github.com/GerritCodeReview/git-repo/actions
Contact
Please use the repo-discuss mailing list or issue tracker for questions.
You can file a new bug report under the "repo" component.
Please do not e-mail individual developers for support. They do not have the bandwidth for it, and often times questions have already been asked on repo-discuss or bugs posted to the issue tracker. So please search those sites first.
Install
Many distros include repo, so you might be able to install from there.
# Debian/Ubuntu.
$ sudo apt-get install repo
# Gentoo.
$ sudo emerge dev-vcs/repo
You can install it manually as well as it's a single script.
$ mkdir -p ~/.bin
$ PATH="${HOME}/.bin:${PATH}"
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/.bin/repo
$ chmod a+rx ~/.bin/repo