Skip to main content

Dolly manages multiple git and svn repos

Project description

# Dolly

[![Build Status](](


_ ,--. | |
_-(_)- | |,---.| | , .
`(___) | || || | | |
// \\ `--' `---'`---'`---'`---|

Dolly manages multiple Git and SVN repos.

## Usage
dolly [-h] [-v] [-r ROOTDIR] [-c CONFIG] command [project]

Dolly can be run in the command line with `dolly` or `dly`.

It takes a command argument and an optional project argument.
Valid commands are:

* `help` to print the help menu
* `list` to list the repositories of the specified project (and all included projects)
* `status` to get uncommitted changes and unpushed commits
* `update` to pull and clone
* `install` to clone repositories that aren't yet on disk
* `list-dirs` to print all local repo paths (useful in scripts)

The action will run for every repository in the specified projects tree and all included projects.

If no project parameter is given Dolly will look for a `default` project.

## Configuration

The config file can be specified with the `-c` parameter.
If no file is specified it looks in `~/.dolly.yml` and `/etc/dolly/dolly.yml`
(in that order).

### Example
description: "HTML5 / JS games"
post_update: "echo $(date) > /tmp/games"
- '2048':
description: "GitHub featured"
- flint:
- normalize:
description: "Stuff"
- moderinzr:

description: "TL;DW"
- html
- games

description: "TL;DW"
- design-essentials
- gameshtml
- testproj:
- clumsybird:

### Extended repository syntax
At the moment, the properties "tag" and "branch" are only supported by git.
- name: 'modernizer'
tag: v2.8.1
post_update: echo done
- name: 'modernizerback'
branch: back
post_update: echo done

In the example the repo '2048' will be placed in `$ROOT_DIR/games/html/js`.

The `default` project also includes the `design-essentials` and `html` projects. So when the `default` project is processed, all of the repos in this config file will be processed.

If a project is included multiple times, it is only processed once.

## Installation

Dolly can be installed using pip with

pip install dolly # Add --upgrade to update dolly

This will also install the following dependencies:
* argparse
* pyyaml

To install from this git repo:

git clone
cd dolly
sudo python install

Project details

Download files

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

Files for Dolly, version 0.4.0
Filename, size File type Python version Upload date Hashes
Filename, size Dolly-0.4.0.tar.gz (8.5 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page