Skip to content

rosettatype/repos

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 

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 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:

$ 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>

or identical:

$ 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

About

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

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages