ocaml-git

Pure OCaml Git format and protocol

ISC License

Stars
362
Committers
36

Bot releases are hidden (Show)

ocaml-git - Fix `ogit --version` and expose more values

Published by samoht almost 10 years ago

  • Fix ogit --version (#22)
  • Expose the backend type
  • Expose Git_unix.Sync.IO
ocaml-git - Use latest Conduit API

Published by avsm almost 10 years ago

  • Port to Conduit 0.6.0 API.
  • Depend on ocaml-hex
ocaml-git - Remove core_kernel dependency and use nocrypto

Published by samoht almost 10 years ago

  • Remove the dependency towards core_kernel
  • Use ocaml-nocrypto instead of ocaml-sha1
ocaml-git - Compatibility with the Mirage's V1_LWT.FS signature

Published by samoht over 10 years ago

  • Can consume Mirage's V1_LWT.FS signature to generate a
    persistent store. This allows to store Git repos directly
    inside raw block devices (no need of filesystem anymore).
  • Minor API refactoring to abstract the unix layer cleanly
  • Expose a filesystem functor to create filesystem backends
    independent of unix
  • Simplify the ocamlfind packages: there's only git and git.unix
ocaml-git - Basic push support (unix only for now on)

Published by samoht over 10 years ago

  • Support for push (not optimized at all)
  • Fix the generation of .dot file representing the Git repo
  • Fix serialization of executable files in the cache
  • Fix reading the total number of keys in a pack index file
  • Use ocaml-conduit to set-up connections with remote repositories
  • USe ocaml-uri to specify Git Remote Identifiers
ocaml-git - Propagate Zlib inflation errors

Published by samoht over 10 years ago

  • Catch, improve and propagate Zlib inflation errors (which usually on incomplete files)
ocaml-git - Escape invalid chars in path names

Published by samoht over 10 years ago

  • Escape invalid chars in path names
  • Do not link with camlp4 when using as a libray
ocaml-git - First release

Published by samoht over 10 years ago

  • Full support for the format of all the Git objects
  • Partial support for the synchronisation protocols
ocaml-git - fix reading of reference files created by the Git command-line

Published by samoht over 10 years ago

  • Strip the contents of references file (this fixes reading of reference files created by the Git command-line)
  • Improve the pretty-printing of SHA1 values
  • Add some info message when reading files in the local backend
ocaml-git - Fix build and expose more functions

Published by samoht almost 11 years ago

  • Add missing files (fix build)
  • Add GitTypes.S.mem_reference
  • Add GitTypes.S.remove_reference
  • Add GitTypes.S.mem to check if an object exists in the store
ocaml-git - fetch operation + in-memory store

Published by samoht almost 11 years ago

  • Support for in-memory stores
  • Add ogit cat-file
  • Add ogit ls-remote
  • Add ogit fetch
  • Add ogit clone
  • Switch non-blocking IO using Lwt
ocaml-git - Initial release

Published by samoht almost 11 years ago

The basic things seems to work OK. You can clone a remote repository, inspect the object files in in git repository, decompress the pack files, draw some nice graphs and generate the filesystem corresponding to a given commit.

What is missing before 1.0:

  • partial clone (ie. pull and fetch)
  • staging area
  • index of files
  • more testing
  • more users