Skip to main content

Automatically reverses Django migrations when changing git branches

Project description

great-scott

great-scott is a tool that can automatically reverse migrations in a Django project, when switching between different GIT branches.

InstallationUsageRemoving GIT hooks

doc

Installation

great-scott can be installed in 2 easy steps:

  1. Install the tool

    I recommend installing via pipx:

    pipx install great-scott
    

    Alternatively, having the project's virtual-env activated, you can of course install the tool directly into virtual-env:

    python -m pip install great-scott
    
  2. Setup GIT hooks

    After successful installation, while in the GIT-managed project folder and with virtual-env activated, execute:

    great-scott install
    

Usage

Reversing migrations should simply work when the GIT branch is changed:

$ git checkout main
Switched to branch 'main'
👀 Looking for migrations to reverse on mig-test...
⚠️ reversing migrations for importer (up to 0015)
⚠️ reversing migrations for permissions (up to 0018)
⚠️ reversing migrations for subscriptions (up to 0044)
I have reversed migrations for 3 apps!

👉 If you use GIT integration in any of the popular IDEs, such as PyCharm or VSCode, don't forget to properly configure the appropriate python environment there so that automatic reversing of migrations is possible.

Removing GIT hooks

To remove the GIT hooks, execute the command (while in the project directory and with virtual-env activated):

great-scott uninstall

Project details


Download files

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

Source Distribution

great_scott-0.1.1.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

great_scott-0.1.1-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file great_scott-0.1.1.tar.gz.

File metadata

  • Download URL: great_scott-0.1.1.tar.gz
  • Upload date:
  • Size: 5.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.12.3 Darwin/23.6.0

File hashes

Hashes for great_scott-0.1.1.tar.gz
Algorithm Hash digest
SHA256 263261adfee9fa97c902797d18e262b5e0f5ad3685b07fd68a150c334412079b
MD5 77594fce5c4e30ea34946de345a68624
BLAKE2b-256 0f0fa79eb293aa3d914cb061193bfcab9b1aab3b1d81a59ccc7a36e89982fe1b

See more details on using hashes here.

File details

Details for the file great_scott-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: great_scott-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.12.3 Darwin/23.6.0

File hashes

Hashes for great_scott-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 031fdac601e1066b84a45d6dfc10944cba998a292b16d1cb91729b2e81aadf97
MD5 279ea5a7586a27430af4a184776d6714
BLAKE2b-256 32554d15c0699cb3e2eb0d3dbb963d869c17a0864ec77ea103f361b64ee163a7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page