An open API service indexing awesome lists of open source software.

https://github.com/rosettatype/repos

Quick and dirty Python script to track multiple Git repositories and easily fetch updates
https://github.com/rosettatype/repos

git python

Last synced: about 1 month ago
JSON representation

Quick and dirty Python script to track multiple Git repositories and easily fetch updates

Awesome Lists containing this project

README

          

# repos

Quick and dirty Python script to track multiple Git repositories and easily fetch updates for them.

It stores a list of repositories in a file `.repos` in your home folder, so you can refer to them with simple short names or all together.

You might want to consider using [Pug](https://github.com/ashur/pug) which is prettier and more versatile. I just felt like Python. I tried to keep the command-line interface similar.

## Usage

For all commands except `repos list`, you can use special name `all` to process all tracked repos (e.g. `repos pull all`). For `pull/up` and `push` this uses only repos that are enabled (see below).

Add repo to the list:

``` bash
$ repos add
```

`` is best kept short and without spaces. E.g.:

``` bash
$ repos add myproject ~/Project/MyMy/
```

Add all repos in subdirectories of to the list, names are generated automatically from the relative path:

``` bash
$ repos add all
```

Remove repo with from the list:

``` bash
$ repos rm
```

Pull updates for repo (uses: `git pull` and `git submodule update --init --recursive`):

``` bash
$ repos pull
```

or identical:

``` bash
$ repos up
```

Push updates for repo (uses: `git push origin master`):

``` bash
$ repos push
```

Enable repo so it is processed when `all` is used as a name (default is enabled):

``` bash
$ repos enable
```

Disable repo so it is not processed when `all` is used as a name:

``` bash
$ repos disable
```

Show repo details:

``` bash
$ repos show
```

Show list of all tracked repos:

``` bash
$ repos list
```

Note: this is a result of my procrastination. Do not expect me to make it less dirty.

Requires Python 2.5 or higher I guess.

Copyright (c) 2015 David Březina. [MIT licence](LICENCE.md)