tsrc: manage multiple repos / review automation
tsrc is a command-line tool that helps you manage groups of several git repositories. It also provides some code review automation.
In can be seen in action on asciinema.org.
tsrc is available on pypi an can be installed via
pip. It requires Python 3.4 or later.
- Create a manifest repository. (
- Push a file named
repos: - src: foo url: firstname.lastname@example.org/foo.git - src: bar url: email@example.com/bar.git
- Create a new workspace with all the repositories listed in the manifest:
$ tsrc init firstname.lastname@example.org/manifest.git :: Configuring workspace in /path/to/work ... => Cloning missing repos * (1/2) foo ... * (2/2) bar ... : Configuring remotes Done ✓
- Synchronize all the repositories in the workspace:
$ tsrc sync => Updating manifest ... :: Configuring remotes :: Synchronizing workspace * (1/2) foo => Fetching origin => Updating branch Already up to date * (2/2) bar => Updating branch Updating 29ac0e1..b635a43 Fast-forward bar.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 bar.txt Done ✓
- Push current branch for review:
$ cd bar $ git checkout new-feature # hackity hack $ tsrc push => Running git push Branch 'new-feature' set up to track remote branch 'new-feature' from 'origin'. Everything up-to-date => Creating merge request :: See merge request at https://github.com/foo/bar/pull/42
For more details and examples, please refer to tsrc documentation.
Detailed changes for each release are documented in the changelog.
Detailed instructions can be found in the documentation.
tsrc is licensed under a BSD 3-Clause license.