Skip to main content

Manage multiple repositories

Project description

https://img.shields.io/travis/SuperTanker/tsrc.svg?branch=master https://img.shields.io/pypi/v/tsrc.svg https://img.shields.io/github/license/SuperTanker/tsrc.svg

Demo

tsrc demo on asciinema.org

Documentation

See https://supertanker.github.io/tsrc/

Screenshots

  • tsrc sync

https://dmerej.info/blog/pics/tsrc-sync.png
  • tsrc log

https://dmerej.info/blog/pics/tsrc-log.png

Tutorial

Getting started

  • Make sure you are using Python3.4 or higher.

  • Install tsrc with pip3 as usual.

  • 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 on GitLab

  • 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 active user>
  • When the review is done, tell GitLab to merge it once the CI passes:

    $ tsrc push --accept

Managing Pull Requests on GitHub

  • Start working on your branch

  • Run tsrc push once. You will be prompted for your login and password (then a token will be saved so you don’t have to authenticate again). The pull request will be created.

You can use the --reviewer option several times to request reviews from your team mates. You can also assign someone to the pull request with the --assign option.

Then you can use tsrc push --merge to merge the pull request, or tsrc push --close to close it.

Why not Google repo?

See the FAQ

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.6.0.tar.gz (31.6 kB view details)

Uploaded Source

Built Distribution

tsrc-0.6.0-py3-none-any.whl (46.9 kB view details)

Uploaded Python 3

File details

Details for the file tsrc-0.6.0.tar.gz.

File metadata

  • Download URL: tsrc-0.6.0.tar.gz
  • Upload date:
  • Size: 31.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

File hashes

Hashes for tsrc-0.6.0.tar.gz
Algorithm Hash digest
SHA256 ffb284bcd1e02c9755c0d6474c5c80a024ff4aa8b7147d07970d5d87ebc6468f
MD5 d03f0ab92f810a42eec90bdbc52f61de
BLAKE2b-256 b72e9a2a6b2e4399c739d6a0373c8c121e3832130f14ac855ae4b42731699f21

See more details on using hashes here.

File details

Details for the file tsrc-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: tsrc-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 46.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

File hashes

Hashes for tsrc-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a30262a021051168c0b6d426ca666b0016284ac7e1c5d3a8c4936836a54b0fa1
MD5 62616e593205822d063ab8cbd36fa95d
BLAKE2b-256 cb8e17e78b182da80e49b1f87ae6e4a86807fc01c2fc18f5df63d2ee55bd23b8

See more details on using hashes here.

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