Skip to main content

Manage multiple repositories

Project description

https://travis-ci.org/TankerApp/tsrc.svg?branch=master http://img.shields.io/pypi/v/tsrc.png

Manage multiple git repos.

Demo

tsrc demo on asciinema.org

Tutorial

Getting started

  • Install tsrc with pip install tsrc

  • Create a manifest repository. (git@example.org/manifest)

  • Push a file named manifest.yml looking like:

    repos:
      - src: foo
        url: git@example.com/foo.git
    
      - src: bar
        url: git@example.com/bar.git
  • Clone the repositories with:

    $ mkdir workspace
    $ cd workspace
    $ tsrc init git@example/manifest.git

In this example:

  • foo will be cloned in <workspace>/foo using git@example.com:foo.git origin url.

  • Similarly, bar will be cloned in <workspace>/bar using git@example.com/bar.git

Managing Merge Requests

  • Generate a token from GitLab

  • Add the http url to the manifest:

    gitlab:
      url: http://gitlab.local
  • Create a ~/.config/tsrc.yml looking like:

    auth:
      gitlab:
        token: <YOUR TOKEN>
  • Start working on your branch

  • Create the pull request:

    $ tsrc push --assignee <an octive user>
  • When the review is done, tell GitLab to merge it once the CI passes:

    $ tsrc push --accept

Differences with google repo

Pros:

  • GitLab support

  • Nicer output

  • Uses mostly ‘porcelain’ commands from git, instead of relying on plumbings internals

  • Comprehensive test suite

  • Uses PEP8 coding style

  • Written in Python 3, not Python 2

Missing features: (May be implemented in the future)

  • Cloning a specific branch, revision or tag

  • Cloning several repositories in parallel

  • Cloning just one or several groups of repositories

  • Support for other hosting services such as gerrit or github

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tsrc-0.1.1.tar.gz (22.2 kB view hashes)

Uploaded Source

Built Distribution

tsrc-0.1.1-py3-none-any.whl (31.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page