Files
geef/README.md
2013-05-13 11:06:37 +02:00

62 lines
1.2 KiB
Markdown

Geef (Git NIF)
================
Geef is a simple Erlang NIF that exposes some of the libgit2 library functions
to Erlang.
INSTALLING AND RUNNING
========================
First you need to install libgit2:
$ git clone git://github.com/libgit2/libgit2.git
$ cd libgit2
$ make
$ make install
Now, if you have Erlang OTP_R13B04 installed, you can compile this NIF to run
in it.
$ git clone git://github.com/carlosmn/geef.git
$ cd geef
$ make
The API looks basically like this:
```erlang
{ok, Repo} = geef_repo:open(".").
Workdir = geef_repo:workdir(Repo).
{ok, Blob} = geef_blob:lookup(Repo, geef_oid:parse("abcde...")).
```
Elixir
======
Some effort is made to let elixir programmers use the library in a
more OO fashion. As an example, you can resolve a reference by calling
a `resolve` method on it.
```elixir
{ :ok, original_ref } = :geef_ref.lookup(repo, refname)
{ :ok, resolved_ref } = original_ref.resolve()
```
CONTRIBUTING
==============
Fork carlosmn/geef on GitHub, make it awesomer (preferably in a branch named
for the topic), send a pull request.
AUTHORS
==============
Scott Chacon <schacon@gmail.com>
Carlos Martín Nieto <cmn@dwim.me>
LICENSE
==============
MIT.