Skip to main content

git your dict

Use Git as a key-value store that can track and merge arbitrary data in Python:

>>> r = jsongit.init('repo')
>>> r.commit('foo', {})
>>> r.checkout('foo', 'bar')
>>> r.commit('foo', {'roses': 'red'})
>>> r.commit('bar', {'violets': 'blue'})
>>> r.merge('foo', 'bar').message
Auto-merge of be92d3dcb6 and dbde44bada from shared parent 5d55214e4f
>>> r.show('foo')
{u'roses': u'red', u'violets': u'blue'}
>>> for commit in r.log('foo'):
...     print(commit)
'foo'='{u'roses': u'red', u'violets': u'blue'}'@fc9e0f3106
'bar'='{u'violets': u'blue'}'@be92d3dcb6
'bar'='{}'@5bb29ad7dc
'foo'='{u'roses': u'red'}'@dbde44bada
'foo'='{}'@5d55214e4f

Installation

Libgit2 is used to build and modify the git repository. You can find instructions for installing it here.

Pip handles the rest:

$ pip install jsongit

You can find full installation instructions in the documentation.

Documentation

Documentation is on Read the Docs.

Metadata

Release files for jsongit 0.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jsongit 0.0.7
File Size Uploaded Provenance
jsongit-0.0.7.tar.gz 16.7 kB Without provenance Details

Release files / jsongit-0.0.7.tar.gz

Download URL jsongit-0.0.7.tar.gz
Size 16.7 kB
Tags Source
SHA-256 checksum
How to use checksums
4354af4ecd48b856655a6c74accfe13427db35cbae54656c9cf19718fe8a085a
BLAKE2b-256 checksum
How to use checksums
5ae5b068d3e1401aff91e60a45b2e0da4876fd631e5de79094ae91be6e1f2bd9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for jsongit 0.0.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page