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
Release history Release notifications | RSS feed
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 hashes)
Built Distribution
Close
Hashes for gitprovenance-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0d7d7f96a07a70fbe101a3f66423699728c03d67ba6784e0198cd9e136c10a6e |
|
MD5 | d3968ec39c6c52ee462f9e253b8c9de6 |
|
BLAKE2b-256 | fe968ff0415cb5bb33d9faeb3f69c42a52310a4e123c339a621dd4d847257104 |