<commit_before>[![Build Status](http://img.shields.io/travis/jacebrowning/gdm/master.svg)](https://travis-ci.org/jacebrowning/gdm)
[![Coverage Status](http://img.shields.io/coveralls/jacebrowning/gdm/master.svg)](https://coveralls.io/r/jacebrowning/gdm)
[![Scrutinizer Code Quality](http://img.shields.io/scrutinizer/g/jacebrowning/gdm.svg)](https://scrutinizer-ci.com/g/jacebrowning/gdm/?branch=master)
[![PyPI Version](http://img.shields.io/pypi/v/GDM.svg)](https://pypi.python.org/pypi/GDM)
[![PyPI Downloads](http://img.shields.io/pypi/dm/GDM.svg)](https://pypi.python.org/pypi/GDM)

Getting Started
===============

Requirements
------------

* Python 3.3+
* Git (with stored credentials)
* OSX/Linux (with a decent shell for Git)

Installation
------------

GDM can be installed with pip:

```
$ pip3 install gdm
```

or directly from the source code:

```
$ git clone https://github.com/jacebrowning/gdm.git
$ cd gdm
$ python3 setup.py install
```

Setup
-----

Create a GDM configuration file in the root of your working tree:

```yaml
location: .gdm
sources:
- repo: https://github.com/kstenerud/iOS-Universal-Framework
  dir: framework
  rev: Mk5-end-of-life
  link: Frameworks/iOS-Universal-Framework
- repo: https://github.com/jonreid/XcodeCoverage
  dir: coverage
  rev: master
  link: Tools/XcodeCoverage
```

Ignore the source location:

```
$ echo .gdm >> .gitignore
```

Basic Usage
===========

Get the specified versions of all dependencies:

```
$ gdm install
```

Remove all installed dependencies:
<commit_msg>Add explanation of YAML attributes<commit_after>[![Build Status](http://img.shields.io/travis/jacebrowning/gdm/master.svg)](https://travis-ci.org/jacebrowning/gdm)
[![Coverage Status](http://img.shields.io/coveralls/jacebrowning/gdm/master.svg)](https://coveralls.io/r/jacebrowning/gdm)
[![Scrutinizer Code Quality](http://img.shields.io/scrutinizer/g/jacebrowning/gdm.svg)](https://scrutinizer-ci.com/g/jacebrowning/gdm/?branch=master)
[![PyPI Version](http://img.shields.io/pypi/v/GDM.svg)](https://pypi.python.org/pypi/GDM)
[![PyPI Downloads](http://img.shields.io/pypi/dm/GDM.svg)](https://pypi.python.org/pypi/GDM)

Getting Started
===============

Requirements
------------

* Python 3.3+
* Git (with stored credentials)
* OSX/Linux (with a decent shell for Git)

Installation
------------

GDM can be installed with pip:

```
$ pip3 install gdm
```

or directly from the source code:

```
$ git clone https://github.com/jacebrowning/gdm.git
$ cd gdm
$ python3 setup.py install
```

Setup
-----

Create a GDM configuration file in the root of your working tree:

```yaml
location: .gdm
sources:
- repo: https://github.com/kstenerud/iOS-Universal-Framework
  dir: framework
  rev: Mk5-end-of-life
  link: Frameworks/iOS-Universal-Framework
- repo: https://github.com/jonreid/XcodeCoverage
  dir: coverage
  rev: master
  link: Tools/XcodeCoverage
```

Ignore the source location:

```
$ echo .gdm >> .gitignore
```

Basic Usage
===========

Get the specified versions of all dependencies:

```
$ gdm install
```

which will exentially:

1. clone each `repo` to `location`/`dir`
2. checkout `rev` in each working tree
3. create a symbolic link to `location`/`dir` named `link`
4. repeat for all dependencies, recursively

To remove all installed dependencies:

{'fraction_non_alphanumeric': 0.18143203883495146, 'fraction_numerical': 0.00424757281553398, 'mean_word_length': 4.1435257410296416, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 16, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '390075', 'n_tokens_mistral': 1242, 'n_tokens_neox': 1158, 'n_words': 248}