PyPI latest PyPI Version PyPI License TravisCI Docs

django-reversion is an extension to the Django web framework that provides version control for model instances.


  • Python 3.6 or later
  • Django 2.0 or later


  • Roll back to any point in a model instance’s history.
  • Recover deleted model instances.
  • Simple admin integration.


Check out the latest django-reversion documentation at Getting Started

Issue tracking and source code can be found at the main project website.

You can keep up to date with the latest announcements by joining the django-reversion discussion group.


Please check the Changelog before upgrading your installation of django-reversion.


Bug reports, bug fixes, and new features are always welcome. Please raise issues on the django-reversion project site, and submit pull requests for any new code.

  1. Fork the repository on GitHub.
  2. Make a branch off of master and commit your changes to it.
  3. Install requirements.
$ pip install django psycopg2 mysqlclient -e .
  1. Run the tests
$ tests/ test tests
  1. Create a Pull Request with your contribution


The django-reversion project was developed by Dave Hall and contributed to by many other people.