1 # Hook Me Up 2 3 [![PyPI - License](https://img.shields.io/pypi/l/hookmeup.svg)](https://pypi.org/project/hookmeup/) 4 [![Build Status](https://builds.danielmoch.com/badges/hookmeup.svg)](https://builds.danielmoch.com/#/builders/hookmeup) 5 [![AppVeyor](https://img.shields.io/appveyor/ci/djmoch/hookmeup.svg?logo=appveyor)](https://ci.appveyor.com/project/djmoch/hookmeup) 6 [![PyPI](https://img.shields.io/pypi/v/hookmeup.svg)](https://pypi.org/project/hookmeup/) 7 8 A Git hook to automate your Pipenv and Django workflows 9 10 ## Requirements 11 12 - Python 2.7+ 13 14 ## Features 15 16 - Fires whenever you switch branches with `git checkout`, or whenever 17 you run `git pull`, or basically any time Git checks files out into 18 your worktree 19 - Cleans and Syncs your Pipenv if there are changes to `Pipfile` or 20 `Pipfile.lock` 21 - Migrates your Django DB to it's current working state, applying and 22 unapplying migrations as necessary 23 24 The hook detects if Pipenv and/or Django are in use in the current repo, 25 so you don't need to be using both to take advantage of Hookmeup. 26 27 ## Usage 28 29 ``` 30 $ pip install hookmeup 31 $ cd $YOUR_PROJECT 32 $ hookmeup install 33 ``` 34 35 More details are available by running `hookmeup --help`. 36 37 ## Contributing 38 39 Pull requests are welcome, preferably via emailed output of `git 40 request-pull` sent to the maintainer (see 41 [here](https://www.git-scm.com/docs/git-request-pull) for more 42 information). Bug reports should also be directed to the maintainer via 43 email. 44 45 ## Releases 46 47 Release tags will always be signed with the maintainer's [PGP 48 key](https://www.danielmoch.com/static/gpg.asc) (also available on any 49 public 50 [keyserver](https://pgp.mit.edu/pks/lookup?op=get&search=0x323C9F1784BDDD43)). 51 PGP-signed versions of release tarballs and pre-built 52 [wheel](https://pythonwheels.com/) packages are available on 53 [PyPI](https://pypi.org/project/hookmeup/), with the signature files 54 living alongside the corresponding artifact (simply append an `.asc` 55 extension). Because the maintainers of PyPI do not consider PGP 56 signatures to be a user-facing feature, the extension must be added 57 manually in your browser's URL bar in order to download the signature 58 files. 59 60 ## Acknowledgments 61 62 hookmeup is inspired by Tim Pope's 63 [hookup](https://github.com/tpope/hookup) utility for Ruby/Rails (and 64 hence so is the name).