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 which is prettier and more versatile. I just felt like Python. I tried to keep the command-line interface similar.
For all commands except
repos list, you can use special name
all to process all tracked repos (e.g.
repos pull all). For
push this uses only repos that are enabled (see below).
Add repo to the list:
$ repos add <name> <path>
<name> is best kept short and without spaces. E.g.:
$ repos add myproject ~/Project/MyMy/
Add all repos in subdirectories of to the list, names are generated automatically from the relative path:
$ repos add all <path>
Remove repo with from the list:
$ repos rm <name>
Pull updates for repo (uses:
git pull and
git submodule update --init --recursive):
$ repos pull <name>
$ repos up <name>
Push updates for repo (uses:
git push origin master):
$ repos push <name>
Enable repo so it is processed when
all is used as a name (default is enabled):
$ repos enable <name>
Disable repo so it is not processed when
all is used as a name:
$ repos disable <name>
Show repo details:
$ repos show <name>
Show list of all tracked repos:
$ 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