Skip to main content

gitprovenance

Project description

Keep track of git repository commits, which correspond to figures generated via matplotlib. This is a pedestrian approach, for cases where a full provenance tracking system is overkill.

Usage

Use gitprovance.savefig instead of plt.savefig:

>>> import matplotlib.pyplot as plt, gitprovenance
>>> plt.plot([1,2,3,4])
>>> gitprovenance.savefig("foo.pdf")

This adds a commit to a hidden branch in the current git repository, which contains the current state of the tree:

$ git log refs/provenance/main
def11c6 (refs/provenance/main) Provenance commit
cd66bed (HEAD -> master, origin/master, origin/HEAD) Add files

The saved figure contains an embedded stamp that refers to the provenance commit, and the head of the current branch at the time, plus a diff between the provenance commit and the branch head:

$ grep PROVENANCE-STAMP foo.pdf
%% @@PROVENANCE-STAMP:commit:def11c6410e78925eaef7feceaadf07fffcbc4f8:head:cd66beda90ddb285d7140cabb4a2a4e504980897:diff:diff --git a/gitprovenance.py b/gitprovenance.py
%% index 011c5f8..a566740 100644
%% --- a/gitprovenance.py
%% +++ b/gitprovenance.py
...

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

gitprovenance-0.0.2.tar.gz (3.6 kB view details)

Uploaded Source

Built Distribution

gitprovenance-0.0.2-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file gitprovenance-0.0.2.tar.gz.

File metadata

  • Download URL: gitprovenance-0.0.2.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.24.0

File hashes

Hashes for gitprovenance-0.0.2.tar.gz
Algorithm Hash digest
SHA256 b30b41df8a6f6fece37fef8535fb634cb5974779bfc21a069aa0323917fa3479
MD5 e43ea8c7ddfab7b82f1f243f590c0354
BLAKE2b-256 b0fb14dbee826ba6f56acba3edcaacf1e4246226bc4af5ec80c3cbe0e3823f17

See more details on using hashes here.

File details

Details for the file gitprovenance-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for gitprovenance-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0d7d7f96a07a70fbe101a3f66423699728c03d67ba6784e0198cd9e136c10a6e
MD5 d3968ec39c6c52ee462f9e253b8c9de6
BLAKE2b-256 fe968ff0415cb5bb33d9faeb3f69c42a52310a4e123c339a621dd4d847257104

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