git: Git operations in haskell

[ bsd3, development, library ] [ Propose Tags ]

A Haskell implementation of git storage operations, allowing users to manipulate git repositories (read and write).

This implementation is fully interoperable with the main C implementation.

This is strictly only manipulating the git store (what's inside the .git directory), and doesn't do anything with the index or your working directory files.


[Skip to Readme]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.2.0, 0.2.1, 0.2.2, 0.3.0
Dependencies base (>=4 && <5), basement, bytestring (>=0.9 && <0.11), containers, cryptonite (>=0.22), hourglass (>=0.2), memory (>=0.13), random, system-fileio, system-filepath, unix-compat, utf8-string, vector, zlib, zlib-bindings (>=0.1 && <0.2) [details]
License BSD-3-Clause
Copyright Vincent Hanquez <vincent@snarc.org>
Author Vincent Hanquez <vincent@snarc.org>
Maintainer Vincent Hanquez <vincent@snarc.org>
Revised Revision 1 made by Bodigrim at 2024-02-07T00:58:07Z
Category Development
Home page https://github.com/vincenthz/hs-git
Source repo head: git clone https://github.com/vincenthz/hs-git
Uploaded by VincentHanquez at 2019-01-26T11:57:14Z
Distributions
Reverse Dependencies 3 direct, 0 indirect [details]
Downloads 4049 total (12 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2019-01-26 [all 1 reports]

Readme for git-0.3.0

[back to package description]

git

Build Status BSD Haskell

git is a reimplementation of git storage and protocol in pure haskell.

What it does do:

  • read loose objects, and packed objects.
  • write new loose objects
  • git like operations available: commit, cat-file, verify-pack, rev-list, ls-tree.
  • diff between commits

What is doesn't do:

  • reimplement the whole of git.
  • checkout's index reading/writing, fetching, merging, diffing.