pmt 0.1.0

██▓███ ███▄ ▄███▓▄▄▄█████▓ ▓██░ ██▒▓██▒▀█▀ ██▒▓ ██▒ ▓▒ ▓██░ ██▓▒▓██ ▓██░▒ ▓██░ ▒░ ▒██▄█▓▒ ▒▒██ ▒██ ░ ▓██▓ ░ ▒██▒ ░ ░▒██▒ ░██▒ ▒██▒ ░ ▒█▒░ ░ ░░ ▒░ ░ ░ ▒ ░░ ░▓ ░ ░ ░ ░ ░ ░░ ░ ░ ░ ░ ░ The ultimate thirst quencher and git workflow tool
Bob is working for a blockchain backed social media startup with 20 engineers.

Bob goes to JIRA and looks for a cool ticket to work on.

Bob finds a cool ticket to work on: "Add a surveillance backdoor to the core messaging system".

Bob is excited.

## Typical workflow

Bob goes to his terminal and opens a new **story**:

```
master ~/project> pmt story DEV-69473 "Add a surveillance backdoor to the core messaging system"
Branch bob/DEV-69473 created!
Checking in...
bob/DEV-69473 ~/project>
```

Bob sips some boba and gets to work on implementing the feature.
Bog is ready to commit his changes.

```
bob/DEV-69473 ~/project> pmt add -A
bob/DEV-69473 ~/project> pmt task --commit "implement NSA backdoor"
Created and committed to task 01 "implement NSA backdoor"
```

Bob writes tests for the code he writes, so Bob creates a task to write tests.

```
bob/DEV-69473 ~/project> pmt task "write tests for NSA backdoor"
Created task 02 "write tests for NSA backdoor"
```

Bob writes some tests and is ready to commit his code.

```
bob/DEV-69473 ~/project> pmt commit -A 02
Committed changes to "write tests for NSA backdoor"
```

A test is failing so Bob goes back to writing his NSA backdoor.

```
bob/DEV-69473 ~/project> pmt add -A
bob/DEV-69473 ~/project> pmt tasks
  01 "implement NSA backdoor"
  02 "write tests for NSA backdoor"

bob/DEV-69473 ~/project> pmt commit 02
```

## Working on multiple Stories

After a meeting, bob realizes he needs switch his focus to a more pressing feature.

```
bob/DEV-69473 ~/project> pmt stories
  * master
  * DEV-69473 "Add a surveillance backdoor to the core messaging system"
  * DEV-69459 "Document messaging schemas"
  * DEV-69451 "Add a GDPR popup to landing page"

bob/DEV-69473 ~/project> pmt checkout /GPDR/
  stashing staged changes...
  checkout out to DEV-69451 "Add GDPR popup to landing page"

bob/DEV-69451 ~/project> pmt where
  DEV-69451 "Add GDPR popup to landing page"
```

## Making a pull request

Let's fast forward. Bob has finally finished implementing the GDPR landing page. He's ready to submit a pull request.

```
bob/DEV-69451 ~/project> pmt mpr
```

A pull request is created on Bob's hosting service (in this case Github).

A coworker approves Bob's changes and Bob merges and squashes his changes to master.

```
bob/DEV-69451 ~/project> pmt update
  fetching latest changes to master...
  It looks like the current branch has been merged to master. Delete branch? [y/n] y
  checking out to master...

master ~/project>
```