/indicium-git

Git-backed key-value store for Indicium

Primary LanguagePython

Indicium Git Store

Build Status Code Coverage

A Git-based key-value store backend for Indicium.

Usage

# Instantiate and write some data.
from indicium.git import GitStore
store = GitStore("./data", autocommit=False)
store.put("/the-answer", b"10")

# Not needed with autocommit=True
store.commit("Note down the answer to everything")

# Create a new commit with the correct answer.
store.put("/the-answer", b"42")
store.commit("Fix the answer to everything")

The ./data directory will contain a Git repository which can be inspected with git. Every call to .commit() adds a commit to it or, with the auto-commit mode enabled, every call to .put() and .delete() will implicitly add a commit.

Installation

All stable releases are uploaded to PyPI, so you can install them and upgrade using pip:

pip install indicium-git

Alternatively, you can install the latest development code —at your own risk— directly from the Git repository:

pip install git://github.com/aperezdc/indicium-git

Development

If you want to contribute, please use the usual GitHub workflow:

  1. Clone the repository.
  2. Hack on your clone.
  3. Send a pull request for review.

If you do not have programming skills, you can still contribute by reporting issues that you may encounter. Contributions to the documentation are very welcome, too!