Skip to main content
Warning: You are using the test version of PyPI. This is a pre-production deployment of Warehouse. Changes made here affect the production instance of TestPyPI (
Help us improve Python packaging - Donate today!

A language-agnostic "dependency manager" using Git.

Project Description

Getting Started


  • Python 3.3+
  • Latest version of Git (with stored credentials)
  • OSX/Linux (with a decent shell for Git)


GDM can be installed with pip:

$ pip3 install gdm

or directly from the source code:

$ git clone
$ cd gdm
$ python3 install


Create a GDM configuration file (gdm.yml or .gdm.yml) in the root of your working tree:

location: .gdm
- repo:
  dir: framework
  rev: Mk5-end-of-life
- repo:
  dir: coverage
  rev: master
  link: Tools/XcodeCoverage

Ignore GDM’s dependency storage location:

$ echo .gdm >> .gitignore

Basic Usage

Get the specified versions of all dependencies:

$ gdm install

which will essentially:

  1. create a working tree at root/location/dir
  2. fetch from repo and checkout the specified rev
  3. symbolicly link each location/dir from root/link (optional)
  4. repeat for all nested working trees containing a configuration file

where rev can be:

  • all or part of a commit SHA: 123def
  • a tag: v1.0
  • a branch: master
  • a rev-parse date: 'develop@{2015-06-18 10:30:59}'

To display the specific versions installed:

$ gdm list

To remove all installed dependencies:

$ gdm uninstall

Revision History

0.4 (dev)

  • Replaced ‘install’ command with ‘update’.
  • Updated ‘install’ command to use locked dependency versions.

0.3 (2015/06/26)

  • Added ‘–no-clean’ option to disable removing untracked files.
  • Added support for rev-parse dates as the dependency rev.

0.2.5 (2015/06/15)

  • Added ‘–quiet’ option to hide warnings.

0.2.4 (2015/05/19)

  • Now hiding YORM logging bellow warnings.

0.2.3 (2015/05/17)

  • Upgraded to YORM v0.4.

0.2.2 (2015/05/04)

  • Specified YORM < v0.4.

0.2.1 (2015/03/12)

  • Added automatic remote branch tracking in dependencies.
  • Now requiring ‘–force’ when there are untracked files.

0.2 (2015/03/10)

  • Added ‘list’ command to display current URLs/SHAs.

0.1.4 (2014/02/27)

  • Fixed an outdated index when checking for changes.

0.1.3 (2014/02/27)

  • Fixed extra whitespace when logging shell output.

0.1.2 (2014/02/27)

  • Added ‘–force’ argument to:
    • overwrite uncommitted changes
    • create symbolic links in place of directories
  • Added live shell command output with ‘-vv’ argument.

0.1 (2014/02/24)

  • Initial release.
Release History

Release History

This version
History Node


Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
GDM-0.4b1-py3-none-any.whl (21.1 kB) Copy SHA256 Checksum SHA256 3.4 Wheel Sep 10, 2015
GDM-0.4b1.tar.gz (16.8 kB) Copy SHA256 Checksum SHA256 Source Sep 10, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting