summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert G. Jakabosky <bobby@sharedrealm.com>2012-06-21 11:06:20 -0700
committerRobert G. Jakabosky <bobby@sharedrealm.com>2012-06-21 11:06:20 -0700
commit2c920a74a9653adb625070a5f416f6394aae8147 (patch)
treeca35ffd1c9edfb93420e32eb473fd19d19eef93c
parentc5b97353696f5d82ca15f69f00f6c4c54fb2afba (diff)
downloadluagit2-2c920a74a9653adb625070a5f416f6394aae8147.tar.gz
Commit generated API docs.
-rw-r--r--docs/git2.luadoc37
-rw-r--r--docs/git2/Blob.luadoc101
-rw-r--r--docs/git2/Commit.luadoc160
-rw-r--r--docs/git2/Config.luadoc147
-rw-r--r--docs/git2/Index.luadoc174
-rw-r--r--docs/git2/IndexEntry.luadoc133
-rw-r--r--docs/git2/IndexEntryUnmerged.luadoc31
-rw-r--r--docs/git2/ODB.luadoc159
-rw-r--r--docs/git2/ODBBackend.luadoc15
-rw-r--r--docs/git2/OID.luadoc58
-rw-r--r--docs/git2/OID_Shorten.luadoc36
-rw-r--r--docs/git2/Object.luadoc63
-rw-r--r--docs/git2/OdbObject.luadoc52
-rw-r--r--docs/git2/Reference.luadoc148
-rw-r--r--docs/git2/Repository.luadoc177
-rw-r--r--docs/git2/RevWalk.luadoc96
-rw-r--r--docs/git2/Signature.luadoc54
-rw-r--r--docs/git2/StrArray.luadoc43
-rw-r--r--docs/git2/Tag.luadoc93
-rw-r--r--docs/git2/Tree.luadoc85
-rw-r--r--docs/git2/TreeEntry.luadoc41
-rw-r--r--docs/index.html264
-rw-r--r--docs/luadoc.css286
-rw-r--r--docs/modules/Blob.html456
-rw-r--r--docs/modules/Commit.html661
-rw-r--r--docs/modules/Config.html690
-rw-r--r--docs/modules/Index.html757
-rw-r--r--docs/modules/IndexEntry.html640
-rw-r--r--docs/modules/IndexEntryUnmerged.html270
-rw-r--r--docs/modules/ODB.html656
-rw-r--r--docs/modules/ODBBackend.html202
-rw-r--r--docs/modules/OID.html360
-rw-r--r--docs/modules/OID_Shorten.html251
-rw-r--r--docs/modules/Object.html342
-rw-r--r--docs/modules/OdbObject.html299
-rw-r--r--docs/modules/Reference.html616
-rw-r--r--docs/modules/Repository.html668
-rw-r--r--docs/modules/RevWalk.html428
-rw-r--r--docs/modules/Signature.html354
-rw-r--r--docs/modules/StrArray.html308
-rw-r--r--docs/modules/Tag.html424
-rw-r--r--docs/modules/Tree.html411
-rw-r--r--docs/modules/TreeEntry.html296
-rw-r--r--docs/modules/git2.html202
44 files changed, 11744 insertions, 0 deletions
diff --git a/docs/git2.luadoc b/docs/git2.luadoc
new file mode 100644
index 0000000..d0e5848
--- /dev/null
+++ b/docs/git2.luadoc
@@ -0,0 +1,37 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Module git2.
+--
+-- See <a href="http://libgit2.github.com/libgit2/#HEAD">libgit2 API docs</a>.
+--
+-- <br />Class <a href="StrArray.html">StrArray</a>
+-- <br />Class <a href="Repository.html">Repository</a>
+-- <br />Class <a href="Config.html">Config</a>
+-- <br />Class <a href="OdbObject.html">OdbObject</a>
+-- <br />Class <a href="OID.html">OID</a>
+-- <br />Class <a href="OID_Shorten.html">OID_Shorten</a>
+-- <br />Class <a href="ODB.html">ODB</a>
+-- <br />Class <a href="ODBBackend.html">ODBBackend</a>
+-- <br />Class <a href="Index.html">Index</a>
+-- <br />Class <a href="IndexEntry.html">IndexEntry</a>
+-- <br />Class <a href="IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+-- <br />Class <a href="Object.html">Object</a>
+-- <br />Class <a href="Blob.html">Blob</a>
+-- <br />Class <a href="Signature.html">Signature</a>
+-- <br />Class <a href="Commit.html">Commit</a>
+-- <br />Class <a href="Tree.html">Tree</a>
+-- <br />Class <a href="TreeEntry.html">TreeEntry</a>
+-- <br />Class <a href="Tag.html">Tag</a>
+-- <br />Class <a href="RevWalk.html">RevWalk</a>
+-- <br />Class <a href="Reference.html">Reference</a>
+module("git2")
+
+--- module function.
+--
+-- @return <code>nil</code>.
+-- @name git2.version
+function git2.version()
+end
+
diff --git a/docs/git2/Blob.luadoc b/docs/git2/Blob.luadoc
new file mode 100644
index 0000000..b694f46
--- /dev/null
+++ b/docs/git2/Blob.luadoc
@@ -0,0 +1,101 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Blob".
+--
+-- Extends <a href="Object.html">Object</a><br />
+module("Blob")
+
+--- Create a new Blob object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_lookup">git_blob_lookup</a>:<p><p>
+-- @param repo the repo to use when locating the blob.. Must be of type <a href="Repository.html">Repository</a>.
+-- @param id identity of the blob to locate.. Must be of type <a href="OID.html">OID</a>.
+-- @return <a href="Blob.html">Blob</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Blob.lookup
+function Blob.lookup(repo, id)
+end
+
+--- module function.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_create_fromfile">git_blob_create_fromfile</a>:<p><p>
+-- @param repo repository where the blob will be written. this repository cannot be bare. Must be of type <a href="Repository.html">Repository</a>.
+-- @param path file from which the blob will be created, relative to the repository's working dir. Must be of type <code>string</code>.
+-- @return <a href="OID.html">OID</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Blob.fromfile
+function Blob.fromfile(repo, path)
+end
+
+--- module function.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_create_frombuffer">git_blob_create_frombuffer</a>:<p><p>
+-- @param repo repository where to blob will be written. Must be of type <a href="Repository.html">Repository</a>.
+-- @param buffer data to be written into the blob. Must be of type <code>string</code>.
+-- @return <a href="OID.html">OID</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Blob.frombuffer
+function Blob.frombuffer(repo, buffer)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_rawcontent">git_blob_rawcontent</a>:<p><p>A pointer to the raw content of a blob is returned;
+-- this pointer is owned internally by the object and shall
+-- not be free'd. The pointer may be invalidated at a later
+-- time.
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_rawsize">git_blob_rawsize</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Blob:rawcontent
+function Blob:rawcontent()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_rawsize">git_blob_rawsize</a>:<p><p>
+-- @return <code>integer</code>.
+-- @name Blob:rawsize
+function Blob:rawsize()
+end
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing
+-- object; note that git_objects are owned and cached by the repository
+-- so the object may or may not be freed after this library call,
+-- depending on how agressive is the caching mechanism used
+-- by the repository.<p> IMPORTANT:
+-- It *is* necessary to call this method when you stop using
+-- an object. Failure to do so will cause a memory leak.
+-- @name Object:free
+function Object:free()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+-- @return <a href="OID.html">OID</a>.
+-- @name Object:id
+function Object:id()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Object:type
+function Object:type()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the
+-- returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without
+-- affecting the object.
+-- @return <a href="Repository.html">Repository</a>.
+-- @name Object:owner
+function Object:owner()
+end
+
diff --git a/docs/git2/Commit.luadoc b/docs/git2/Commit.luadoc
new file mode 100644
index 0000000..436fb4a
--- /dev/null
+++ b/docs/git2/Commit.luadoc
@@ -0,0 +1,160 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Commit".
+--
+-- Extends <a href="Object.html">Object</a><br />
+module("Commit")
+
+--- Create a new Commit object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_lookup">git_commit_lookup</a>:<p><p>
+-- @param repo the repo to use when locating the commit.. Must be of type <a href="Repository.html">Repository</a>.
+-- @param id identity of the commit to locate. If the object is an annotated tag it will be peeled back to the commit.. Must be of type <a href="OID.html">OID</a>.
+-- @return <a href="Commit.html">Commit</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Commit.lookup
+function Commit.lookup(repo, id)
+end
+
+--- module function.
+--
+-- @param oid Must be of type <a href="OID.html">OID</a>.
+-- @param repo Must be of type <a href="Repository.html">Repository</a>.
+-- @param update_ref Must be of type <code>string</code>.
+-- @param author Must be of type <a href="Signature.html">Signature</a>.
+-- @param committer Must be of type <a href="Signature.html">Signature</a>.
+-- @param message_encoding Must be of type <code>string</code>.
+-- @param message Must be of type <code>string</code>.
+-- @param tree Must be of type <a href="Tree.html">Tree</a>.
+-- @param parent Must be of type <a href="Commit.html">Commit</a>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Commit.create
+function Commit.create(oid, repo, update_ref, author, committer, message_encoding, message, tree, parent)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_id">git_commit_id</a>:<p><p>
+-- @return <a href="OID.html">OID</a>.
+-- @name Commit:id
+function Commit:id()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_message_encoding">git_commit_message_encoding</a>:<p><p>The encoding may be NULL if the `encoding` header
+-- in the commit is missing; in that case UTF-8 is assumed.
+-- @return <code>string</code>.
+-- @name Commit:message_encoding
+function Commit:message_encoding()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_message">git_commit_message</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Commit:message
+function Commit:message()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_time">git_commit_time</a>:<p><p>
+-- @return <code>integer</code>.
+-- @name Commit:time
+function Commit:time()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_time_offset">git_commit_time_offset</a>:<p><p>
+-- @return <code>integer</code>.
+-- @name Commit:time_offset
+function Commit:time_offset()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_committer">git_commit_committer</a>:<p><p>
+-- @return <a href="Signature.html">Signature</a>.
+-- @name Commit:committer
+function Commit:committer()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_author">git_commit_author</a>:<p><p>
+-- @return <a href="Signature.html">Signature</a>.
+-- @name Commit:author
+function Commit:author()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_tree">git_commit_tree</a>:<p><p>
+-- @return <a href="Tree.html">Tree</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Commit:tree
+function Commit:tree()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_parentcount">git_commit_parentcount</a>:<p><p>
+-- @return <code>integer</code>.
+-- @name Commit:parentcount
+function Commit:parentcount()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_parent">git_commit_parent</a>:<p><p>
+-- @param n the position of the parent (from 0 to `parentcount`). Must be of type <code>integer</code>.
+-- @return <a href="Commit.html">Commit</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Commit:parent
+function Commit:parent(n)
+end
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing
+-- object; note that git_objects are owned and cached by the repository
+-- so the object may or may not be freed after this library call,
+-- depending on how agressive is the caching mechanism used
+-- by the repository.<p> IMPORTANT:
+-- It *is* necessary to call this method when you stop using
+-- an object. Failure to do so will cause a memory leak.
+-- @name Object:free
+function Object:free()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+-- @return <a href="OID.html">OID</a>.
+-- @name Object:id
+function Object:id()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Object:type
+function Object:type()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the
+-- returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without
+-- affecting the object.
+-- @return <a href="Repository.html">Repository</a>.
+-- @name Object:owner
+function Object:owner()
+end
+
diff --git a/docs/git2/Config.luadoc b/docs/git2/Config.luadoc
new file mode 100644
index 0000000..37a53f4
--- /dev/null
+++ b/docs/git2/Config.luadoc
@@ -0,0 +1,147 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Config".
+--
+module("Config")
+
+--- Create a new Config object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_new">git_config_new</a>:<p><p>This object is empty, so you have to add a file to it before you
+-- can do anything with it.
+-- @return <a href="Config.html">Config</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Config.new
+function Config.new()
+end
+
+--- Create a new Config object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_open_ondisk">git_config_open_ondisk</a>:<p><p>This method is a simple utility wrapper for the following sequence
+-- of calls:
+-- - git_config_new
+-- - git_config_add_file_ondisk
+-- @param path Path to the on-disk file to open. Must be of type <code>string</code>.
+-- @return <a href="Config.html">Config</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Config.open
+function Config.open(path)
+end
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_free">git_config_free</a>:<p><p>
+-- @name Config:free
+function Config:free()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_add_file_ondisk">git_config_add_file_ondisk</a>:<p><p>The on-disk file pointed at by `path` will be opened and
+-- parsed; it's expected to be a native Git config file following
+-- the default Git config syntax (see man git-config).<p> Note that the configuration object will free the file
+-- automatically.<p> Further queries on this config object will access each
+-- of the config file instances in order (instances with
+-- a higher priority will be accessed first).
+-- @param path path to the configuration file (backend) to add. Must be of type <code>string</code>.
+-- @param priority the priority the backend should have. Must be of type <code>integer</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Config:add_file_ondisk
+function Config:add_file_ondisk(path, priority)
+end
+
+--- object method.
+--
+-- @param name Must be of type <code>string</code>.
+-- @return <code>integer</code> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Config:get_int32
+function Config:get_int32(name)
+end
+
+--- object method.
+--
+-- @param name Must be of type <code>string</code>.
+-- @param value Must be of type <code>integer</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Config:set_int32
+function Config:set_int32(name, value)
+end
+
+--- object method.
+--
+-- @param name Must be of type <code>string</code>.
+-- @return <code>integer</code> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Config:get_int64
+function Config:get_int64(name)
+end
+
+--- object method.
+--
+-- @param name Must be of type <code>string</code>.
+-- @param value Must be of type <code>integer</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Config:set_int64
+function Config:set_int64(name, value)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_get_bool">git_config_get_bool</a>:<p><p>This function uses the usual C convention of 0 being false and
+-- anything else true.
+-- @param name the variable's name. Must be of type <code>string</code>.
+-- @return <code>boolean</code> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Config:get_bool
+function Config:get_bool(name)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_set_bool">git_config_set_bool</a>:<p><p>
+-- @param value the value to store. Must be of type <code>boolean</code>.
+-- @param name the variable's name. Must be of type <code>string</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Config:set_bool
+function Config:set_bool(value, name)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_get_string">git_config_get_string</a>:<p><p>The string is owned by the variable and should not be freed by the
+-- user.
+-- @param name the variable's name. Must be of type <code>string</code>.
+-- @return <code>string</code> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Config:get_string
+function Config:get_string(name)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_set_string">git_config_set_string</a>:<p><p>A copy of the string is made and the user is free to use it
+-- afterwards.
+-- @param name the variable's name. Must be of type <code>string</code>.
+-- @param value the string to store.. Must be of type <code>string</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Config:set_string
+function Config:set_string(name, value)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_delete">git_config_delete</a>:<p><p>
+-- @param name the variable to delete. Must be of type <code>string</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Config:delete
+function Config:delete(name)
+end
+
diff --git a/docs/git2/Index.luadoc b/docs/git2/Index.luadoc
new file mode 100644
index 0000000..bfa51cc
--- /dev/null
+++ b/docs/git2/Index.luadoc
@@ -0,0 +1,174 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Index".
+--
+module("Index")
+
+--- Create a new Index object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_open">git_index_open</a>:<p><p>Since there is no ODB or working directory behind this index,
+-- any Index methods which rely on these (e.g. index_add) will
+-- fail with the GIT_EBAREINDEX error code.<p> If you need to access the index of an actual repository,
+-- use the `git_repository_index` wrapper.<p> The index must be freed once it's no longer in use.
+-- @param index_path the path to the index file in disk. Must be of type <code>string</code>.
+-- @return <a href="Index.html">Index</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Index.bare
+function Index.bare(index_path)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_clear">git_index_clear</a>:<p><p>
+-- @name Index:clear
+function Index:clear()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_read">git_index_read</a>:<p><p>
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Index:read
+function Index:read()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_write">git_index_write</a>:<p><p>
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Index:write
+function Index:write()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_find">git_index_find</a>:<p><p>
+-- @param path path to search. Must be of type <code>string</code>.
+-- @return <code>integer</code>.
+-- @name Index:find
+function Index:find(path)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_uniq">git_index_uniq</a>:<p><p>
+-- @name Index:uniq
+function Index:uniq()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_add">git_index_add</a>:<p><p>The file `path` must be relative to the repository's
+-- working folder and must be readable.<p> This method will fail in bare index instances.<p> This forces the file to be added to the index, not looking
+-- at gitignore rules. Those rules can be evaluated through
+-- the git_status APIs (in status.h) before calling this.
+-- @param path filename to add. Must be of type <code>string</code>.
+-- @param stage stage for the entry. Must be of type <code>integer</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Index:add
+function Index:add(path, stage)
+end
+
+--- object method.
+--
+-- @param source_entry Must be of type <a href="IndexEntry.html">IndexEntry</a>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Index:add2
+function Index:add2(source_entry)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_append">git_index_append</a>:<p><p>A new entry will always be inserted into the index;
+-- if the index already contains an entry for such
+-- path, the old entry will **not** be replaced.<p> The file `path` must be relative to the repository's
+-- working folder and must be readable.<p> This method will fail in bare index instances.
+-- @param path filename to add. Must be of type <code>string</code>.
+-- @param stage stage for the entry. Must be of type <code>integer</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Index:append
+function Index:append(path, stage)
+end
+
+--- object method.
+--
+-- @param source_entry Must be of type <a href="IndexEntry.html">IndexEntry</a>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Index:append2
+function Index:append2(source_entry)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_remove">git_index_remove</a>:<p><p>
+-- @param position position of the entry to remove. Must be of type <code>integer</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Index:remove
+function Index:remove(position)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_get">git_index_get</a>:<p><p>This entry can be modified, and the changes will be written
+-- back to disk on the next write() call.<p> The entry should not be freed by the caller.
+-- @param n the position of the entry. Must be of type <code>integer</code>.
+-- @return <a href="IndexEntry.html">IndexEntry</a>.
+-- @name Index:get
+function Index:get(n)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_entrycount">git_index_entrycount</a>:<p><p>
+-- @return <code>integer</code>.
+-- @name Index:entrycount
+function Index:entrycount()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_entrycount_unmerged">git_index_entrycount_unmerged</a>:<p><p>
+-- @return <code>integer</code>.
+-- @name Index:entrycount_unmerged
+function Index:entrycount_unmerged()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_get_unmerged_bypath">git_index_get_unmerged_bypath</a>:<p><p>The returned entry is read-only and should not be modified
+-- of freed by the caller.
+-- @param path path to search. Must be of type <code>string</code>.
+-- @return <a href="IndexEntryUnmerged.html">IndexEntryUnmerged</a>.
+-- @name Index:get_unmerged_bypath
+function Index:get_unmerged_bypath(path)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_get_unmerged_byindex">git_index_get_unmerged_byindex</a>:<p><p>The returned entry is read-only and should not be modified
+-- of freed by the caller.
+-- @param n the position of the entry. Must be of type <code>integer</code>.
+-- @return <a href="IndexEntryUnmerged.html">IndexEntryUnmerged</a>.
+-- @name Index:get_unmerged_byindex
+function Index:get_unmerged_byindex(n)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_read_tree">git_index_read_tree</a>:<p><p>The current index contents will be replaced by the specified tree.
+-- @param tree tree to read. Must be of type <a href="Tree.html">Tree</a>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Index:read_tree
+function Index:read_tree(tree)
+end
+
diff --git a/docs/git2/IndexEntry.luadoc b/docs/git2/IndexEntry.luadoc
new file mode 100644
index 0000000..8900db6
--- /dev/null
+++ b/docs/git2/IndexEntry.luadoc
@@ -0,0 +1,133 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "IndexEntry".
+--
+module("IndexEntry")
+
+--- Create a new IndexEntry object.
+--
+-- @return <a href="IndexEntry.html">IndexEntry</a>.
+-- @name IndexEntry.new
+function IndexEntry.new()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_entry_stage">git_index_entry_stage</a>:<p><p>This entry is calculated from the entrie's flag
+-- attribute like this:<p> (entry->flags & GIT_IDXENTRY_STAGEMASK) >> GIT_IDXENTRY_STAGESHIFT<p> @returns the stage number
+-- @return <code>integer</code>.
+-- @name IndexEntry:stage
+function IndexEntry:stage()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @return <code>integer</code>.
+-- @name IndexEntry:ctime
+function IndexEntry:ctime()
+end
+
+--- object method.
+--
+-- @param secs Must be of type <code>integer</code>.
+-- @param nanosecs Must be of type <code>integer</code>.
+-- @name IndexEntry:set_ctime
+function IndexEntry:set_ctime(secs, nanosecs)
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @return <code>integer</code>.
+-- @name IndexEntry:mtime
+function IndexEntry:mtime()
+end
+
+--- object method.
+--
+-- @param secs Must be of type <code>integer</code>.
+-- @param nanosecs Must be of type <code>integer</code>.
+-- @name IndexEntry:set_mtime
+function IndexEntry:set_mtime(secs, nanosecs)
+end
+
+--- object method.
+--
+-- @return <code>string</code>.
+-- @name IndexEntry:path
+function IndexEntry:path()
+end
+
+--- object method.
+--
+-- @param val Must be of type <code>string</code>.
+-- @name IndexEntry:set_path
+function IndexEntry:set_path(val)
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @name IndexEntry:dev
+function IndexEntry:dev()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @name IndexEntry:ino
+function IndexEntry:ino()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @name IndexEntry:mode
+function IndexEntry:mode()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @name IndexEntry:uid
+function IndexEntry:uid()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @name IndexEntry:gid
+function IndexEntry:gid()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @name IndexEntry:file_size
+function IndexEntry:file_size()
+end
+
+--- object method.
+--
+-- @return <a href="OID.html">OID</a>.
+-- @name IndexEntry:oid
+function IndexEntry:oid()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @name IndexEntry:flags
+function IndexEntry:flags()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @name IndexEntry:flags_extended
+function IndexEntry:flags_extended()
+end
+
diff --git a/docs/git2/IndexEntryUnmerged.luadoc b/docs/git2/IndexEntryUnmerged.luadoc
new file mode 100644
index 0000000..bc70e12
--- /dev/null
+++ b/docs/git2/IndexEntryUnmerged.luadoc
@@ -0,0 +1,31 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "IndexEntryUnmerged".
+--
+module("IndexEntryUnmerged")
+
+--- object method.
+--
+-- @param idx Must be of type <code>integer</code>.
+-- @return <code>integer</code>.
+-- @name IndexEntryUnmerged:mode
+function IndexEntryUnmerged:mode(idx)
+end
+
+--- object method.
+--
+-- @param idx Must be of type <code>integer</code>.
+-- @return <a href="OID.html">OID</a>.
+-- @name IndexEntryUnmerged:oid
+function IndexEntryUnmerged:oid(idx)
+end
+
+--- object method.
+--
+-- @return <code>string</code>.
+-- @name IndexEntryUnmerged:path
+function IndexEntryUnmerged:path()
+end
+
diff --git a/docs/git2/ODB.luadoc b/docs/git2/ODB.luadoc
new file mode 100644
index 0000000..6e060ee
--- /dev/null
+++ b/docs/git2/ODB.luadoc
@@ -0,0 +1,159 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "ODB".
+--
+module("ODB")
+
+--- Create a new ODB object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_new">git_odb_new</a>:<p><p>Before the ODB can be used for read/writing, a custom database
+-- backend must be manually added using `git_odb_add_backend()`
+-- @return <a href="ODB.html">ODB</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name ODB.new
+function ODB.new()
+end
+
+--- Create a new ODB object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_open">git_odb_open</a>:<p><p>- git_odb_backend_loose: read and write loose object files
+-- from disk, assuming `objects_dir` as the Objects folder<p> - git_odb_backend_pack: read objects from packfiles,
+-- assuming `objects_dir` as the Objects folder which
+-- contains a 'pack/' folder with the corresponding data
+-- @param object_dir Must be of type <code>string</code>.
+-- @return <a href="ODB.html">ODB</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name ODB.open
+function ODB.open(object_dir)
+end
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_free">git_odb_free</a>:<p><p>
+-- @name ODB:free
+function ODB:free()
+end
+
+--- object method.
+--
+-- @param backend Must be of type <a href="ODBBackend.html">ODBBackend</a>.
+-- @param priority Must be of type <code>integer</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name ODB:add_backend
+function ODB:add_backend(backend, priority)
+end
+
+--- object method.
+--
+-- @param backend Must be of type <a href="ODBBackend.html">ODBBackend</a>.
+-- @param priority Must be of type <code>integer</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name ODB:add_alternate
+function ODB:add_alternate(backend, priority)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_read">git_odb_read</a>:<p><p>This method queries all available ODB backends
+-- trying to read the given OID.<p> The returned object is reference counted and
+-- internally cached, so it should be closed
+-- by the user once it's no longer in use.<p> @return
+-- - 0 if the object was read;
+-- - GIT_ENOTFOUND if the object is not in the database.
+-- @param id identity of the object to read.. Must be of type <a href="OID.html">OID</a>.
+-- @return <a href="OdbObject.html">OdbObject</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name ODB:read
+function ODB:read(id)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_read_prefix">git_odb_read_prefix</a>:<p><p>This method queries all available ODB backends
+-- trying to match the 'len' first hexadecimal
+-- characters of the 'short_id'.
+-- The remaining (GIT_OID_HEXSZ-len)*4 bits of
+-- 'short_id' must be 0s.
+-- 'len' must be at least GIT_OID_MINPREFIXLEN,
+-- and the prefix must be long enough to identify
+-- a unique object in all the backends; the
+-- method will fail otherwise.<p> The returned object is reference counted and
+-- internally cached, so it should be closed
+-- by the user once it's no longer in use.
+-- @param short_id a prefix of the id of the object to read.. Must be of type <a href="OID.html">OID</a>.
+-- @param len the length of the prefix. Must be of type <code>integer</code>.
+-- @return <a href="OdbObject.html">OdbObject</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name ODB:read_prefix
+function ODB:read_prefix(short_id, len)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_read_header">git_odb_read_header</a>:<p><p>The header includes the length and the type of an object.<p> Note that most backends do not support reading only the header
+-- of an object, so the whole object will be read and then the
+-- header will be returned.<p> @return
+-- - 0 if the object was read;
+-- - GIT_ENOTFOUND if the object is not in the database.
+-- @param id identity of the object to read.. Must be of type <a href="OID.html">OID</a>.
+-- @return <code>integer</code> or <code>nil</code> on error.
+-- @return <code>string</code> or <code>nil</code> on error.
+-- @return Error string.
+-- @name ODB:read_header
+function ODB:read_header(id)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_exists">git_odb_exists</a>:<p><p>@return
+-- - 1, if the object was found
+-- - 0, otherwise
+-- @param id the object to search for.. Must be of type <a href="OID.html">OID</a>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name ODB:exists
+function ODB:exists(id)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_write">git_odb_write</a>:<p><p>This method writes a full object straight into the ODB.
+-- For most cases, it is preferred to write objects through a write
+-- stream, which is both faster and less memory intensive, specially
+-- for big objects.<p> This method is provided for compatibility with custom backends
+-- which are not able to support streaming writes
+-- @param data buffer with the data to storr. Must be of type <code>string</code>.
+-- @param type type of the data to store. Must be of type <code>string</code>.
+-- @return <a href="OID.html">OID</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name ODB:write
+function ODB:write(data, type)
+end
+
+--- module function.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_hash">git_odb_hash</a>:<p><p>The resulting SHA-1 OID will the itentifier for the data
+-- buffer as if the data buffer it were to written to the ODB.
+-- @param data data to hash. Must be of type <code>string</code>.
+-- @param otype Must be of type <code>integer</code>.
+-- @return <a href="OID.html">OID</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name ODB.hash
+function ODB.hash(data, otype)
+end
+
+--- module function.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_hashfile">git_odb_hashfile</a>:<p><p>
+-- @param path file to read and determine object id for. Must be of type <code>string</code>.
+-- @param otype Must be of type <code>integer</code>.
+-- @return <a href="OID.html">OID</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name ODB.hashfile
+function ODB.hashfile(path, otype)
+end
+
diff --git a/docs/git2/ODBBackend.luadoc b/docs/git2/ODBBackend.luadoc
new file mode 100644
index 0000000..6823b2e
--- /dev/null
+++ b/docs/git2/ODBBackend.luadoc
@@ -0,0 +1,15 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "ODBBackend".
+--
+module("ODBBackend")
+
+--- Create a new ODBBackend object.
+--
+-- @return <a href="ODBBackend.html">ODBBackend</a>.
+-- @name ODBBackend.new
+function ODBBackend.new()
+end
+
diff --git a/docs/git2/OID.luadoc b/docs/git2/OID.luadoc
new file mode 100644
index 0000000..87e86a1
--- /dev/null
+++ b/docs/git2/OID.luadoc
@@ -0,0 +1,58 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "OID".
+--
+module("OID")
+
+--- Create a new OID object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_fromstrn">git_oid_fromstrn</a>:<p><p>If N is odd, N-1 characters will be parsed instead.
+-- The remaining space in the git_oid will be set to zero.
+-- @param str input hex string of at least size `length`. Must be of type <code>string</code>.
+-- @return <a href="OID.html">OID</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name OID.hex
+function OID.hex(str)
+end
+
+--- Create a new OID object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_fromraw">git_oid_fromraw</a>:<p><p>
+-- @param raw the raw input bytes to be copied.. Must be of type <code>string</code>.
+-- @return <a href="OID.html">OID</a>.
+-- @name OID.raw
+function OID.raw(raw)
+end
+
+--- object method.
+--
+-- @return <code>string</code>.
+-- @name OID:pathfmt
+function OID:pathfmt()
+end
+
+--- object method.
+--
+-- @return <code>string</code>.
+-- @name OID:fmt
+function OID:fmt()
+end
+
+--- object meta method.
+--
+-- @return <code>string</code>.
+-- @name OID_mt:__tostring
+function OID_mt:__tostring()
+end
+
+--- object meta method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_cmp">git_oid_cmp</a>:<p><p>
+-- @param id Must be of type <a href="OID.html">OID</a>.
+-- @return <code>integer</code>.
+-- @name OID_mt:__eq
+function OID_mt:__eq(id)
+end
+
diff --git a/docs/git2/OID_Shorten.luadoc b/docs/git2/OID_Shorten.luadoc
new file mode 100644
index 0000000..5311517
--- /dev/null
+++ b/docs/git2/OID_Shorten.luadoc
@@ -0,0 +1,36 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "OID_Shorten".
+--
+module("OID_Shorten")
+
+--- Create a new OID_Shorten object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_shorten_new">git_oid_shorten_new</a>:<p><p>The OID shortener is used to process a list of OIDs
+-- in text form and return the shortest length that would
+-- uniquely identify all of them.<p> E.g. look at the result of `git log --abbrev`.
+-- @param min_length The minimal length for all identifiers, which will be used even if shorter OIDs would still be unique.. Must be of type <code>integer</code>.
+-- @return <a href="OID_Shorten.html">OID_Shorten</a>.
+-- @name OID_Shorten.new
+function OID_Shorten.new(min_length)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_shorten_add">git_oid_shorten_add</a>:<p><p>The OID is expected to be a 40-char hexadecimal string.
+-- The OID is owned by the user and will not be modified
+-- or freed.<p> For performance reasons, there is a hard-limit of how many
+-- OIDs can be added to a single set (around ~22000, assuming
+-- a mostly randomized distribution), which should be enough
+-- for any kind of program, and keeps the algorithm fast and
+-- memory-efficient.<p> Attempting to add more than those OIDs will result in a
+-- GIT_ENOMEM error
+-- @param text_oid an OID in text form. Must be of type <code>string</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name OID_Shorten:add
+function OID_Shorten:add(text_oid)
+end
+
diff --git a/docs/git2/Object.luadoc b/docs/git2/Object.luadoc
new file mode 100644
index 0000000..9af2cb6
--- /dev/null
+++ b/docs/git2/Object.luadoc
@@ -0,0 +1,63 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Object".
+--
+module("Object")
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing
+-- object; note that git_objects are owned and cached by the repository
+-- so the object may or may not be freed after this library call,
+-- depending on how agressive is the caching mechanism used
+-- by the repository.<p> IMPORTANT:
+-- It *is* necessary to call this method when you stop using
+-- an object. Failure to do so will cause a memory leak.
+-- @name Object:free
+function Object:free()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+-- @return <a href="OID.html">OID</a>.
+-- @name Object:id
+function Object:id()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Object:type
+function Object:type()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the
+-- returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without
+-- affecting the object.
+-- @return <a href="Repository.html">Repository</a>.
+-- @name Object:owner
+function Object:owner()
+end
+
+--- module function.
+--
+-- @param otype Must be of type <code>integer</code>.
+-- @return <code>string</code>.
+-- @name Object.type2string
+function Object.type2string(otype)
+end
+
+--- module function.
+--
+-- @param str Must be of type <code>string</code>.
+-- @return <code>integer</code>.
+-- @name Object.string2type
+function Object.string2type(str)
+end
+
diff --git a/docs/git2/OdbObject.luadoc b/docs/git2/OdbObject.luadoc
new file mode 100644
index 0000000..b08dd12
--- /dev/null
+++ b/docs/git2/OdbObject.luadoc
@@ -0,0 +1,52 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "OdbObject".
+--
+module("OdbObject")
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_free">git_odb_object_free</a>:<p><p>This method must always be called once a `git_odb_object` is no
+-- longer needed, otherwise memory will leak.
+-- @name OdbObject:free
+function OdbObject:free()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_id">git_odb_object_id</a>:<p><p>This is the OID from which the object was read from
+-- @return <a href="OID.html">OID</a>.
+-- @name OdbObject:id
+function OdbObject:id()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_data">git_odb_object_data</a>:<p><p>This is the uncompressed, raw data as read from the ODB,
+-- without the leading header.<p> This pointer is owned by the object and shall not be free'd.
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_size">git_odb_object_size</a>:<p><p>This is the real size of the `data` buffer, not the
+-- actual size of the object.
+-- @return <code>string</code>.
+-- @name OdbObject:data
+function OdbObject:data()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_size">git_odb_object_size</a>:<p><p>This is the real size of the `data` buffer, not the
+-- actual size of the object.
+-- @return <code>integer</code>.
+-- @name OdbObject:size
+function OdbObject:size()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_type">git_odb_object_type</a>:<p><p>
+-- @return <code>string</code>.
+-- @name OdbObject:type
+function OdbObject:type()
+end
+
diff --git a/docs/git2/Reference.luadoc b/docs/git2/Reference.luadoc
new file mode 100644
index 0000000..4c4fae9
--- /dev/null
+++ b/docs/git2/Reference.luadoc
@@ -0,0 +1,148 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Reference".
+--
+module("Reference")
+
+--- Create a new Reference object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_lookup">git_reference_lookup</a>:<p><p>The generated reference must be freed by the user.
+-- @param repo the repository to look up the reference. Must be of type <a href="Repository.html">Repository</a>.
+-- @param name the long name for the reference (e.g. HEAD, ref/heads/master, refs/tags/v0.1.0, ...). Must be of type <code>string</code>.
+-- @return <a href="Reference.html">Reference</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Reference.lookup
+function Reference.lookup(repo, name)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_oid">git_reference_oid</a>:<p><p>Only available if the reference is direct (i.e. not symbolic)
+-- @return <a href="OID.html">OID</a>.
+-- @name Reference:oid
+function Reference:oid()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_set_oid">git_reference_set_oid</a>:<p><p>The reference must be a direct reference, otherwise
+-- this method will fail.<p> The reference will be automatically updated in
+-- memory and on disk.
+-- @param oid Must be of type <a href="OID.html">OID</a>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Reference:set_oid
+function Reference:set_oid(oid)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_target">git_reference_target</a>:<p><p>Only available if the reference is symbolic
+-- @return <code>string</code>.
+-- @name Reference:target
+function Reference:target()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_set_target">git_reference_set_target</a>:<p><p>The reference must be a symbolic reference, otherwise
+-- this method will fail.<p> The reference will be automatically updated in
+-- memory and on disk.
+-- @param target The new target for the reference. Must be of type <code>string</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Reference:set_target
+function Reference:set_target(target)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_type">git_reference_type</a>:<p><p>Either direct (GIT_REF_OID) or symbolic (GIT_REF_SYMBOLIC)
+-- @return <code>integer</code>.
+-- @name Reference:type
+function Reference:type()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_name">git_reference_name</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Reference:name
+function Reference:name()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_resolve">git_reference_resolve</a>:<p><p>Thie method iteratively peels a symbolic reference
+-- until it resolves to a direct reference to an OID.<p> The peeled reference is returned in the `resolved_ref`
+-- argument, and must be freed manually once it's no longer
+-- needed.<p> If a direct reference is passed as an argument,
+-- a copy of that reference is returned. This copy must
+-- be manually freed too.
+-- @return <a href="Reference.html">Reference</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Reference:resolve
+function Reference:resolve()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_owner">git_reference_owner</a>:<p><p>
+-- @return <a href="Repository.html">Repository</a>.
+-- @name Reference:owner
+function Reference:owner()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_rename">git_reference_rename</a>:<p><p>This method works for both direct and symbolic references.
+-- The new name will be checked for validity and may be
+-- modified into a normalized form.<p> The given git_reference will be updated in place.<p> The reference will be immediately renamed in-memory
+-- and on disk.<p> If the `force` flag is not enabled, and there's already
+-- a reference with the given name, the renaming will fail.<p> IMPORTANT:
+-- The user needs to write a proper reflog entry if the
+-- reflog is enabled for the repository. We only rename
+-- the reflog if it exists.
+-- @param new_name The new name for the reference. Must be of type <code>string</code>.
+-- @param force Overwrite an existing reference. Must be of type <code>boolean</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Reference:rename
+function Reference:rename(new_name, force)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_delete">git_reference_delete</a>:<p><p>This method works for both direct and symbolic references.<p> The reference will be immediately removed on disk and from
+-- memory. The given reference pointer will no longer be valid.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Reference:delete
+function Reference:delete()
+end
+
+--- module function.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_packall">git_reference_packall</a>:<p><p>This method will load into the cache all the loose
+-- references on the repository and update the
+-- `packed-refs` file with them.<p> Once the `packed-refs` file has been written properly,
+-- the loose references will be removed from disk.
+-- @param repo Repository where the loose refs will be packed. Must be of type <a href="Repository.html">Repository</a>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Reference.packall
+function Reference.packall(repo)
+end
+
+--- module function.
+--
+-- @param repo Must be of type <a href="Repository.html">Repository</a>.
+-- @param list_flags Must be of type <code>integer</code>.
+-- @return <a href="StrArray.html">StrArray</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Reference.list
+function Reference.list(repo, list_flags)
+end
+
diff --git a/docs/git2/Repository.luadoc b/docs/git2/Repository.luadoc
new file mode 100644
index 0000000..3be21a3
--- /dev/null
+++ b/docs/git2/Repository.luadoc
@@ -0,0 +1,177 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Repository".
+--
+module("Repository")
+
+--- Create a new Repository object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_open">git_repository_open</a>:<p><p>The 'path' argument must point to either a git repository
+-- folder, or an existing work dir.<p> The method will automatically detect if 'path' is a normal
+-- or bare repository or fail is 'path' is neither.
+-- @param path the path to the repository. Must be of type <code>string</code>.
+-- @return <a href="Repository.html">Repository</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Repository.open
+function Repository.open(path)
+end
+
+--- Create a new Repository object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_init">git_repository_init</a>:<p><p>TODO:
+-- - Reinit the repository
+-- @param path the path to the repository. Must be of type <code>string</code>.
+-- @param is_bare if true, a Git repository without a working directory is created at the pointed path. If false, provided path will be considered as the working directory into which the .git directory will be created.. Must be of type <code>integer</code>.
+-- @return <a href="Repository.html">Repository</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Repository.init
+function Repository.init(path, is_bare)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_head">git_repository_head</a>:<p><p>
+-- @return <a href="Reference.html">Reference</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Repository:head
+function Repository:head()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_head_detached">git_repository_head_detached</a>:<p><p>A repository's HEAD is detached when it points directly to a commit
+-- instead of a branch.
+-- @return <code>boolean</code>.
+-- @name Repository:head_detached
+function Repository:head_detached()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_head_orphan">git_repository_head_orphan</a>:<p><p>An orphan branch is one named from HEAD but which doesn't exist in
+-- the refs namespace, because it doesn't have any commit to point to.
+-- @return <code>boolean</code>.
+-- @name Repository:head_orphan
+function Repository:head_orphan()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_is_empty">git_repository_is_empty</a>:<p><p>An empty repository has just been initialized and contains
+-- no commits.
+-- @return <code>boolean</code>.
+-- @name Repository:is_empty
+function Repository:is_empty()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_is_bare">git_repository_is_bare</a>:<p><p>
+-- @return <code>boolean</code>.
+-- @name Repository:is_bare
+function Repository:is_bare()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_path">git_repository_path</a>:<p><p>This is the path of the `.git` folder for normal repositories,
+-- or of the repository itself for bare repositories.
+-- @return <code>string</code>.
+-- @name Repository:path
+function Repository:path()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_workdir">git_repository_workdir</a>:<p><p>If the repository is bare, this function will always return
+-- NULL.
+-- @return <code>string</code>.
+-- @name Repository:workdir
+function Repository:workdir()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_set_workdir">git_repository_set_workdir</a>:<p><p>The working directory doesn't need to be the same one
+-- that contains the `.git` folder for this repository.<p> If this repository is bare, setting its working directory
+-- will turn it into a normal repository, capable of performing
+-- all the common workdir operations (checkout, status, index
+-- manipulation, etc).
+-- @param workdir The path to a working directory. Must be of type <code>string</code>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name Repository:set_workdir
+function Repository:set_workdir(workdir)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_config">git_repository_config</a>:<p><p>If a configuration file has not been set, the default
+-- config set for the repository will be returned, including
+-- global and system configurations (if they are available).<p> The configuration file must be freed once it's no longer
+-- being used by the user.
+-- @return <a href="Config.html">Config</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Repository:config
+function Repository:config()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_set_config">git_repository_set_config</a>:<p><p>This configuration file will be used for all configuration
+-- queries involving this repository.<p> The repository will keep a reference to the config file;
+-- the user must still free the config after setting it
+-- to the repository, or it will leak.
+-- @param config A Config object. Must be of type <a href="Config.html">Config</a>.
+-- @name Repository:set_config
+function Repository:set_config(config)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_odb">git_repository_odb</a>:<p><p>If a custom ODB has not been set, the default
+-- database for the repository will be returned (the one
+-- located in `.git/objects`).<p> The ODB must be freed once it's no longer being used by
+-- the user.
+-- @return <a href="ODB.html">ODB</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Repository:odb
+function Repository:odb()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_set_odb">git_repository_set_odb</a>:<p><p>The ODB will be used for all object-related operations
+-- involving this repository.<p> The repository will keep a reference to the ODB; the user
+-- must still free the ODB object after setting it to the
+-- repository, or it will leak.
+-- @param odb An ODB object. Must be of type <a href="ODB.html">ODB</a>.
+-- @name Repository:set_odb
+function Repository:set_odb(odb)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_index">git_repository_index</a>:<p><p>If a custom index has not been set, the default
+-- index for the repository will be returned (the one
+-- located in `.git/index`).<p> The index must be freed once it's no longer being used by
+-- the user.
+-- @return <a href="Index.html">Index</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Repository:index
+function Repository:index()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_set_index">git_repository_set_index</a>:<p><p>This index will be used for all index-related operations
+-- involving this repository.<p> The repository will keep a reference to the index file;
+-- the user must still free the index after setting it
+-- to the repository, or it will leak.
+-- @param index An index object. Must be of type <a href="Index.html">Index</a>.
+-- @name Repository:set_index
+function Repository:set_index(index)
+end
+
diff --git a/docs/git2/RevWalk.luadoc b/docs/git2/RevWalk.luadoc
new file mode 100644
index 0000000..c0c8794
--- /dev/null
+++ b/docs/git2/RevWalk.luadoc
@@ -0,0 +1,96 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "RevWalk".
+--
+module("RevWalk")
+
+--- Create a new RevWalk object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_new">git_revwalk_new</a>:<p><p>This revision walker uses a custom memory pool and an internal
+-- commit cache, so it is relatively expensive to allocate.<p> For maximum performance, this revision walker should be
+-- reused for different walks.<p> This revision walker is *not* thread safe: it may only be
+-- used to walk a repository on a single thread; however,
+-- it is possible to have several revision walkers in
+-- several different threads walking the same repository.
+-- @param repo the repo to walk through. Must be of type <a href="Repository.html">Repository</a>.
+-- @return <a href="RevWalk.html">RevWalk</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name RevWalk.new
+function RevWalk.new(repo)
+end
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_free">git_revwalk_free</a>:<p><p>
+-- @name RevWalk:close
+function RevWalk:close()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_reset">git_revwalk_reset</a>:<p><p>This will clear all the pushed and hidden commits, and
+-- leave the walker in a blank state (just like at
+-- creation) ready to receive new commit pushes and
+-- start a new walk.<p> The revision walk is automatically reset when a walk
+-- is over.
+-- @name RevWalk:reset
+function RevWalk:reset()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_push">git_revwalk_push</a>:<p><p>The given OID must belong to a commit on the walked
+-- repository.<p> The given commit will be used as one of the roots
+-- when starting the revision walk. At least one commit
+-- must be pushed the repository before a walk can
+-- be started.
+-- @param id Must be of type <a href="OID.html">OID</a>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name RevWalk:push
+function RevWalk:push(id)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_hide">git_revwalk_hide</a>:<p><p>The given OID must belong to a commit on the walked
+-- repository.<p> The resolved commit and all its parents will be hidden from the
+-- output on the revision walk.
+-- @param id Must be of type <a href="OID.html">OID</a>.
+-- @return <code>true</code> if no error.
+-- @return Error string.
+-- @name RevWalk:hide
+function RevWalk:hide(id)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_next">git_revwalk_next</a>:<p><p>The initial call to this method is *not* blocking when
+-- iterating through a repo with a time-sorting mode.<p> Iterating with Topological or inverted modes makes the initial
+-- call blocking to preprocess the commit list, but this block should be
+-- mostly unnoticeable on most repositories (topological preprocessing
+-- times at 0.3s on the git.git repo).<p> The revision walker is reset when the walk is over.
+-- @return <a href="OID.html">OID</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name RevWalk:next
+function RevWalk:next()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_sorting">git_revwalk_sorting</a>:<p><p>Changing the sorting mode resets the walker.
+-- @param sort_mode combination of GIT_SORT_XXX flags. Must be of type <code>integer</code>.
+-- @name RevWalk:sorting
+function RevWalk:sorting(sort_mode)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_repository">git_revwalk_repository</a>:<p><p>
+-- @return <a href="Repository.html">Repository</a>.
+-- @name RevWalk:repository
+function RevWalk:repository()
+end
+
diff --git a/docs/git2/Signature.luadoc b/docs/git2/Signature.luadoc
new file mode 100644
index 0000000..e8802f5
--- /dev/null
+++ b/docs/git2/Signature.luadoc
@@ -0,0 +1,54 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Signature".
+--
+module("Signature")
+
+--- Create a new Signature object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/signature/git_signature_new">git_signature_new</a>:<p><p>
+-- @param name name of the person. Must be of type <code>string</code>.
+-- @param email email of the person. Must be of type <code>string</code>.
+-- @param time time when the action happened. Must be of type <code>integer</code>.
+-- @param offset timezone offset in minutes for the time. Must be of type <code>integer</code>.
+-- @return <a href="Signature.html">Signature</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Signature.new
+function Signature.new(name, email, time, offset)
+end
+
+--- Create a new Signature object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/signature/git_signature_now">git_signature_now</a>:<p><p>
+-- @param name name of the person. Must be of type <code>string</code>.
+-- @param email email of the person. Must be of type <code>string</code>.
+-- @return <a href="Signature.html">Signature</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Signature.now
+function Signature.now(name, email)
+end
+
+--- object method.
+--
+-- @return <code>string</code>.
+-- @name Signature:name
+function Signature:name()
+end
+
+--- object method.
+--
+-- @return <code>string</code>.
+-- @name Signature:email
+function Signature:email()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @return <code>integer</code>.
+-- @name Signature:when
+function Signature:when()
+end
+
diff --git a/docs/git2/StrArray.luadoc b/docs/git2/StrArray.luadoc
new file mode 100644
index 0000000..1be8f9c
--- /dev/null
+++ b/docs/git2/StrArray.luadoc
@@ -0,0 +1,43 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "StrArray".
+--
+module("StrArray")
+
+--- Create a new StrArray object.
+--
+-- @return <a href="StrArray.html">StrArray</a>.
+-- @name StrArray.new
+function StrArray.new()
+end
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- @name StrArray:free
+function StrArray:free()
+end
+
+--- object method.
+--
+-- @param n Must be of type <code>integer</code>.
+-- @return <code>string</code>.
+-- @name StrArray:str
+function StrArray:str(n)
+end
+
+--- object method.
+--
+-- @return <code>nil</code>.
+-- @name StrArray:get_array
+function StrArray:get_array()
+end
+
+--- object method.
+--
+-- @return <code>integer</code>.
+-- @name StrArray:count
+function StrArray:count()
+end
+
diff --git a/docs/git2/Tag.luadoc b/docs/git2/Tag.luadoc
new file mode 100644
index 0000000..653cc9e
--- /dev/null
+++ b/docs/git2/Tag.luadoc
@@ -0,0 +1,93 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Tag".
+--
+-- Extends <a href="Object.html">Object</a><br />
+module("Tag")
+
+--- Create a new Tag object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_lookup">git_tag_lookup</a>:<p><p>
+-- @param repo the repo to use when locating the tag.. Must be of type <a href="Repository.html">Repository</a>.
+-- @param id identity of the tag to locate.. Must be of type <a href="OID.html">OID</a>.
+-- @return <a href="Tag.html">Tag</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Tag.lookup
+function Tag.lookup(repo, id)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_target">git_tag_target</a>:<p><p>This method performs a repository lookup for the
+-- given object and returns it
+-- @return <a href="Object.html">Object</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Tag:target
+function Tag:target()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_name">git_tag_name</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Tag:name
+function Tag:name()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_tagger">git_tag_tagger</a>:<p><p>
+-- @return <a href="Signature.html">Signature</a>.
+-- @name Tag:tagger
+function Tag:tagger()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_message">git_tag_message</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Tag:message
+function Tag:message()
+end
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing
+-- object; note that git_objects are owned and cached by the repository
+-- so the object may or may not be freed after this library call,
+-- depending on how agressive is the caching mechanism used
+-- by the repository.<p> IMPORTANT:
+-- It *is* necessary to call this method when you stop using
+-- an object. Failure to do so will cause a memory leak.
+-- @name Object:free
+function Object:free()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+-- @return <a href="OID.html">OID</a>.
+-- @name Object:id
+function Object:id()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Object:type
+function Object:type()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the
+-- returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without
+-- affecting the object.
+-- @return <a href="Repository.html">Repository</a>.
+-- @name Object:owner
+function Object:owner()
+end
+
diff --git a/docs/git2/Tree.luadoc b/docs/git2/Tree.luadoc
new file mode 100644
index 0000000..7f0831b
--- /dev/null
+++ b/docs/git2/Tree.luadoc
@@ -0,0 +1,85 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "Tree".
+--
+-- Extends <a href="Object.html">Object</a><br />
+module("Tree")
+
+--- Create a new Tree object.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_lookup">git_tree_lookup</a>:<p><p>
+-- @param repo the repo to use when locating the tree.. Must be of type <a href="Repository.html">Repository</a>.
+-- @param id identity of the tree to locate.. Must be of type <a href="OID.html">OID</a>.
+-- @return <a href="Tree.html">Tree</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name Tree.lookup
+function Tree.lookup(repo, id)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entrycount">git_tree_entrycount</a>:<p><p>
+-- @return <code>integer</code>.
+-- @name Tree:entrycount
+function Tree:entrycount()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entry_byname">git_tree_entry_byname</a>:<p><p>
+-- @param filename the filename of the desired entry. Must be of type <code>string</code>.
+-- @return <a href="TreeEntry.html">TreeEntry</a>.
+-- @name Tree:entry_byname
+function Tree:entry_byname(filename)
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entry_byindex">git_tree_entry_byindex</a>:<p><p>
+-- @param index Must be of type <code>integer</code>.
+-- @return <a href="TreeEntry.html">TreeEntry</a>.
+-- @name Tree:entry_byindex
+function Tree:entry_byindex(index)
+end
+
+--- Destroy this object (will be called by Garbage Collector).
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing
+-- object; note that git_objects are owned and cached by the repository
+-- so the object may or may not be freed after this library call,
+-- depending on how agressive is the caching mechanism used
+-- by the repository.<p> IMPORTANT:
+-- It *is* necessary to call this method when you stop using
+-- an object. Failure to do so will cause a memory leak.
+-- @name Object:free
+function Object:free()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+-- @return <a href="OID.html">OID</a>.
+-- @name Object:id
+function Object:id()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+-- @return <code>string</code>.
+-- @name Object:type
+function Object:type()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the
+-- returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without
+-- affecting the object.
+-- @return <a href="Repository.html">Repository</a>.
+-- @name Object:owner
+function Object:owner()
+end
+
diff --git a/docs/git2/TreeEntry.luadoc b/docs/git2/TreeEntry.luadoc
new file mode 100644
index 0000000..7fb85ea
--- /dev/null
+++ b/docs/git2/TreeEntry.luadoc
@@ -0,0 +1,41 @@
+--
+-- Warning: AUTOGENERATED DOCS.
+--
+
+--- Class "TreeEntry".
+--
+module("TreeEntry")
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entry_name">git_tree_entry_name</a>:<p><p>
+-- @return <code>string</code>.
+-- @name TreeEntry:name
+function TreeEntry:name()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entry_attributes">git_tree_entry_attributes</a>:<p><p>
+-- @return <code>integer</code>.
+-- @name TreeEntry:attributes
+function TreeEntry:attributes()
+end
+
+--- object method.
+--
+-- @return <a href="OID.html">OID</a>.
+-- @name TreeEntry:id
+function TreeEntry:id()
+end
+
+--- object method.
+--
+-- <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entry_to_object">git_tree_entry_to_object</a>:<p><p>@param object pointer to the converted object
+-- @param repo repository where to lookup the pointed object. Must be of type <a href="Repository.html">Repository</a>.
+-- @return <a href="Object.html">Object</a> or <code>nil</code> on error.
+-- @return Error string.
+-- @name TreeEntry:object
+function TreeEntry:object(repo)
+end
+
diff --git a/docs/index.html b/docs/index.html
new file mode 100644
index 0000000..c6ed799
--- /dev/null
+++ b/docs/index.html
@@ -0,0 +1,264 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><strong>Index</strong></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div> <!-- id="navigation" -->
+
+<div id="content">
+
+
+
+<h2>Modules</h2>
+<table class="module_list">
+<!--<tr><td colspan="2">Modules</td></tr>-->
+
+ <tr>
+ <td class="name"><a href="modules/Blob.html">Blob</a></td>
+ <td class="summary">Class "Blob".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/Commit.html">Commit</a></td>
+ <td class="summary">Class "Commit".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/Config.html">Config</a></td>
+ <td class="summary">Class "Config".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/Index.html">Index</a></td>
+ <td class="summary">Class "Index".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/IndexEntry.html">IndexEntry</a></td>
+ <td class="summary">Class "IndexEntry".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a></td>
+ <td class="summary">Class "IndexEntryUnmerged".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/ODB.html">ODB</a></td>
+ <td class="summary">Class "ODB".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/ODBBackend.html">ODBBackend</a></td>
+ <td class="summary">Class "ODBBackend".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/OID.html">OID</a></td>
+ <td class="summary">Class "OID".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/OID_Shorten.html">OID_Shorten</a></td>
+ <td class="summary">Class "OID_Shorten".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/Object.html">Object</a></td>
+ <td class="summary">Class "Object".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/OdbObject.html">OdbObject</a></td>
+ <td class="summary">Class "OdbObject".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/Reference.html">Reference</a></td>
+ <td class="summary">Class "Reference".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/Repository.html">Repository</a></td>
+ <td class="summary">Class "Repository".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/RevWalk.html">RevWalk</a></td>
+ <td class="summary">Class "RevWalk".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/Signature.html">Signature</a></td>
+ <td class="summary">Class "Signature".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/StrArray.html">StrArray</a></td>
+ <td class="summary">Class "StrArray".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/Tag.html">Tag</a></td>
+ <td class="summary">Class "Tag".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/Tree.html">Tree</a></td>
+ <td class="summary">Class "Tree".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/TreeEntry.html">TreeEntry</a></td>
+ <td class="summary">Class "TreeEntry".</td>
+ </tr>
+
+ <tr>
+ <td class="name"><a href="modules/git2.html">git2</a></td>
+ <td class="summary">Module git2.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/luadoc.css b/docs/luadoc.css
new file mode 100644
index 0000000..bc0f98a
--- /dev/null
+++ b/docs/luadoc.css
@@ -0,0 +1,286 @@
+body {
+ margin-left: 1em;
+ margin-right: 1em;
+ font-family: arial, helvetica, geneva, sans-serif;
+ background-color:#ffffff; margin:0px;
+}
+
+code {
+ font-family: "Andale Mono", monospace;
+}
+
+tt {
+ font-family: "Andale Mono", monospace;
+}
+
+body, td, th { font-size: 11pt; }
+
+h1, h2, h3, h4 { margin-left: 0em; }
+
+textarea, pre, tt { font-size:10pt; }
+body, td, th { color:#000000; }
+small { font-size:0.85em; }
+h1 { font-size:1.5em; }
+h2 { font-size:1.25em; }
+h3 { font-size:1.15em; }
+h4 { font-size:1.06em; }
+
+a:link { font-weight:bold; color: #004080; text-decoration: none; }
+a:visited { font-weight:bold; color: #006699; text-decoration: none; }
+a:link:hover { text-decoration:underline; }
+hr { color:#cccccc }
+img { border-width: 0px; }
+
+
+h3 { padding-top: 1em; }
+
+p { margin-left: 1em; }
+
+p.name {
+ font-family: "Andale Mono", monospace;
+ padding-top: 1em;
+ margin-left: 0em;
+}
+
+blockquote { margin-left: 3em; }
+
+pre.example {
+ background-color: rgb(245, 245, 245);
+ border-top-width: 1px;
+ border-right-width: 1px;
+ border-bottom-width: 1px;
+ border-left-width: 1px;
+ border-top-style: solid;
+ border-right-style: solid;
+ border-bottom-style: solid;
+ border-left-style: solid;
+ border-top-color: silver;
+ border-right-color: silver;
+ border-bottom-color: silver;
+ border-left-color: silver;
+ padding: 1em;
+ margin-left: 1em;
+ margin-right: 1em;
+ font-family: "Andale Mono", monospace;
+ font-size: smaller;
+}
+
+
+hr {
+ margin-left: 0em;
+ background: #00007f;
+ border: 0px;
+ height: 1px;
+}
+
+ul { list-style-type: disc; }
+
+table.index { border: 1px #00007f; }
+table.index td { text-align: left; vertical-align: top; }
+table.index ul { padding-top: 0em; margin-top: 0em; }
+
+table {
+ border: 1px solid black;
+ border-collapse: collapse;
+ margin-left: auto;
+ margin-right: auto;
+}
+th {
+ border: 1px solid black;
+ padding: 0.5em;
+}
+td {
+ border: 1px solid black;
+ padding: 0.5em;
+}
+div.header, div.footer { margin-left: 0em; }
+
+#container
+{
+ margin-left: 1em;
+ margin-right: 1em;
+ background-color: #f0f0f0;
+}
+
+#product
+{
+ text-align: center;
+ border-bottom: 1px solid #cccccc;
+ background-color: #ffffff;
+}
+
+#product big {
+ font-size: 2em;
+}
+
+#product_logo
+{
+}
+
+#product_name
+{
+}
+
+#product_description
+{
+}
+
+#main
+{
+ background-color: #f0f0f0;
+ border-left: 2px solid #cccccc;
+}
+
+#navigation
+{
+ float: left;
+ width: 18em;
+ margin: 0;
+ vertical-align: top;
+ background-color: #f0f0f0;
+ overflow:visible;
+}
+
+#navigation h1 {
+ background-color:#e7e7e7;
+ font-size:1.1em;
+ color:#000000;
+ text-align:left;
+ margin:0px;
+ padding:0.2em;
+ border-top:1px solid #dddddd;
+ border-bottom:1px solid #dddddd;
+}
+
+#navigation ul
+{
+ font-size:1em;
+ list-style-type: none;
+ padding: 0;
+ margin: 1px;
+}
+
+#navigation li
+{
+ text-indent: -1em;
+ margin: 0em 0em 0em 0.5em;
+ display: block;
+ padding: 3px 0px 0px 12px;
+}
+
+#navigation li li a
+{
+ padding: 0px 3px 0px -1em;
+}
+
+#content
+{
+ margin-left: 18em;
+ padding: 1em;
+ border-left: 2px solid #cccccc;
+ border-right: 2px solid #cccccc;
+ background-color: #ffffff;
+}
+
+#about
+{
+ clear: both;
+ margin: 0;
+ padding: 5px;
+ border-top: 2px solid #cccccc;
+ background-color: #ffffff;
+}
+
+@media print {
+ body {
+ font: 12pt "Times New Roman", "TimeNR", Times, serif;
+ }
+ a { font-weight:bold; color: #004080; text-decoration: underline; }
+
+ #main { background-color: #ffffff; border-left: 0px; }
+ #container { margin-left: 2%; margin-right: 2%; background-color: #ffffff; }
+
+ #content { margin-left: 0px; padding: 1em; border-left: 0px; border-right: 0px; background-color: #ffffff; }
+
+ #navigation { display: none;
+ }
+ pre.example {
+ font-family: "Andale Mono", monospace;
+ font-size: 10pt;
+ page-break-inside: avoid;
+ }
+}
+
+table.module_list td
+{
+ border-width: 1px;
+ padding: 3px;
+ border-style: solid;
+ border-color: #cccccc;
+}
+table.module_list td.name { background-color: #f0f0f0; }
+table.module_list td.summary { width: 100%; }
+
+table.file_list
+{
+ border-width: 1px;
+ border-style: solid;
+ border-color: #cccccc;
+ border-collapse: collapse;
+}
+table.file_list td
+{
+ border-width: 1px;
+ padding: 3px;
+ border-style: solid;
+ border-color: #cccccc;
+}
+table.file_list td.name { background-color: #f0f0f0; }
+table.file_list td.summary { width: 100%; }
+
+
+table.function_list
+{
+ border-width: 1px;
+ border-style: solid;
+ border-color: #cccccc;
+ border-collapse: collapse;
+}
+table.function_list td
+{
+ border-width: 1px;
+ padding: 3px;
+ border-style: solid;
+ border-color: #cccccc;
+}
+table.function_list td.name { background-color: #f0f0f0; }
+table.function_list td.summary { width: 100%; }
+
+
+table.table_list
+{
+ border-width: 1px;
+ border-style: solid;
+ border-color: #cccccc;
+ border-collapse: collapse;
+}
+table.table_list td
+{
+ border-width: 1px;
+ padding: 3px;
+ border-style: solid;
+ border-color: #cccccc;
+}
+table.table_list td.name { background-color: #f0f0f0; }
+table.table_list td.summary { width: 100%; }
+
+dl.function dt {border-top: 1px solid #ccc; padding-top: 1em;}
+dl.function dd {padding-bottom: 1em;}
+dl.function h3 {padding: 0; margin: 0; font-size: medium;}
+
+dl.table dt {border-top: 1px solid #ccc; padding-top: 1em;}
+dl.table dd {padding-bottom: 1em;}
+dl.table h3 {padding: 0; margin: 0; font-size: medium;}
+
+#TODO: make module_list, file_list, function_list, table_list inherit from a list
+
diff --git a/docs/modules/Blob.html b/docs/modules/Blob.html
new file mode 100644
index 0000000..5e01c97
--- /dev/null
+++ b/docs/modules/Blob.html
@@ -0,0 +1,456 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li><strong>Blob</strong></li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Blob</code></h1>
+
+<p>Class "Blob". Extends <a href="Object.html">Object</a><br /></p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Blob.frombuffer">Blob.frombuffer</a>&nbsp;(repo, buffer)</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Blob.fromfile">Blob.fromfile</a>&nbsp;(repo, path)</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Blob.lookup">Blob.lookup</a>&nbsp;(repo, id)</td>
+ <td class="summary">Create a new Blob object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Blob:rawcontent">Blob:rawcontent</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Blob:rawsize">Blob:rawsize</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:free">Object:free</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:id">Object:id</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:owner">Object:owner</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:type">Object:type</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Blob.frombuffer"></a><strong>Blob.frombuffer</strong>&nbsp;(repo, buffer)</dt>
+<dd>
+module function. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_create_frombuffer">git_blob_create_frombuffer</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: repository where to blob will be written. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ buffer: data to be written into the blob. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="OID.html">OID</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Blob.fromfile"></a><strong>Blob.fromfile</strong>&nbsp;(repo, path)</dt>
+<dd>
+module function. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_create_fromfile">git_blob_create_fromfile</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: repository where the blob will be written. this repository cannot be bare. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ path: file from which the blob will be created, relative to the repository's working dir. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="OID.html">OID</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Blob.lookup"></a><strong>Blob.lookup</strong>&nbsp;(repo, id)</dt>
+<dd>
+Create a new Blob object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_lookup">git_blob_lookup</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: the repo to use when locating the blob.. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ id: identity of the blob to locate.. Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Blob.html">Blob</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Blob:rawcontent"></a><strong>Blob:rawcontent</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_rawcontent">git_blob_rawcontent</a>:<p><p>A pointer to the raw content of a blob is returned; this pointer is owned internally by the object and shall not be free'd. The pointer may be invalidated at a later time. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_rawsize">git_blob_rawsize</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Blob:rawsize"></a><strong>Blob:rawsize</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/blob/git_blob_rawsize">git_blob_rawsize</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:free"></a><strong>Object:free</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector). <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing object; note that git_objects are owned and cached by the repository so the object may or may not be freed after this library call, depending on how agressive is the caching mechanism used by the repository.<p> IMPORTANT: It *is* necessary to call this method when you stop using an object. Failure to do so will cause a memory leak.
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:id"></a><strong>Object:id</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:owner"></a><strong>Object:owner</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without affecting the object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Repository.html">Repository</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:type"></a><strong>Object:type</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/Commit.html b/docs/modules/Commit.html
new file mode 100644
index 0000000..ab884fb
--- /dev/null
+++ b/docs/modules/Commit.html
@@ -0,0 +1,661 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li><strong>Commit</strong></li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Commit</code></h1>
+
+<p>Class "Commit". Extends <a href="Object.html">Object</a><br /></p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit.create">Commit.create</a>&nbsp;(oid, repo, update_ref, author, committer, message_encoding, message, tree, parent)</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit.lookup">Commit.lookup</a>&nbsp;(repo, id)</td>
+ <td class="summary">Create a new Commit object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:author">Commit:author</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:committer">Commit:committer</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:id">Commit:id</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:message">Commit:message</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:message_encoding">Commit:message_encoding</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:parent">Commit:parent</a>&nbsp;(n)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:parentcount">Commit:parentcount</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:time">Commit:time</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:time_offset">Commit:time_offset</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Commit:tree">Commit:tree</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:free">Object:free</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:id">Object:id</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:owner">Object:owner</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:type">Object:type</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Commit.create"></a><strong>Commit.create</strong>&nbsp;(oid, repo, update_ref, author, committer, message_encoding, message, tree, parent)</dt>
+<dd>
+module function.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ oid: Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+ <li>
+ repo: Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ update_ref: Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ author: Must be of type <a href="Signature.html">Signature</a>.
+ </li>
+
+ <li>
+ committer: Must be of type <a href="Signature.html">Signature</a>.
+ </li>
+
+ <li>
+ message_encoding: Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ message: Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ tree: Must be of type <a href="Tree.html">Tree</a>.
+ </li>
+
+ <li>
+ parent: Must be of type <a href="Commit.html">Commit</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit.lookup"></a><strong>Commit.lookup</strong>&nbsp;(repo, id)</dt>
+<dd>
+Create a new Commit object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_lookup">git_commit_lookup</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: the repo to use when locating the commit.. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ id: identity of the commit to locate. If the object is an annotated tag it will be peeled back to the commit.. Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Commit.html">Commit</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:author"></a><strong>Commit:author</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_author">git_commit_author</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Signature.html">Signature</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:committer"></a><strong>Commit:committer</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_committer">git_commit_committer</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Signature.html">Signature</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:id"></a><strong>Commit:id</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_id">git_commit_id</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:message"></a><strong>Commit:message</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_message">git_commit_message</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:message_encoding"></a><strong>Commit:message_encoding</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_message_encoding">git_commit_message_encoding</a>:<p><p>The encoding may be NULL if the `encoding` header in the commit is missing; in that case UTF-8 is assumed.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:parent"></a><strong>Commit:parent</strong>&nbsp;(n)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_parent">git_commit_parent</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ n: the position of the parent (from 0 to `parentcount`). Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Commit.html">Commit</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:parentcount"></a><strong>Commit:parentcount</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_parentcount">git_commit_parentcount</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:time"></a><strong>Commit:time</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_time">git_commit_time</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:time_offset"></a><strong>Commit:time_offset</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_time_offset">git_commit_time_offset</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Commit:tree"></a><strong>Commit:tree</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_tree">git_commit_tree</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Tree.html">Tree</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:free"></a><strong>Object:free</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector). <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing object; note that git_objects are owned and cached by the repository so the object may or may not be freed after this library call, depending on how agressive is the caching mechanism used by the repository.<p> IMPORTANT: It *is* necessary to call this method when you stop using an object. Failure to do so will cause a memory leak.
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:id"></a><strong>Object:id</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:owner"></a><strong>Object:owner</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without affecting the object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Repository.html">Repository</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:type"></a><strong>Object:type</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/Config.html b/docs/modules/Config.html
new file mode 100644
index 0000000..213b179
--- /dev/null
+++ b/docs/modules/Config.html
@@ -0,0 +1,690 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li><strong>Config</strong></li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Config</code></h1>
+
+<p>Class "Config". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Config.new">Config.new</a>&nbsp;()</td>
+ <td class="summary">Create a new Config object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config.open">Config.open</a>&nbsp;(path)</td>
+ <td class="summary">Create a new Config object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:add_file_ondisk">Config:add_file_ondisk</a>&nbsp;(path, priority)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:delete">Config:delete</a>&nbsp;(name)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:free">Config:free</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:get_bool">Config:get_bool</a>&nbsp;(name)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:get_int32">Config:get_int32</a>&nbsp;(name)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:get_int64">Config:get_int64</a>&nbsp;(name)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:get_string">Config:get_string</a>&nbsp;(name)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:set_bool">Config:set_bool</a>&nbsp;(value, name)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:set_int32">Config:set_int32</a>&nbsp;(name, value)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:set_int64">Config:set_int64</a>&nbsp;(name, value)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Config:set_string">Config:set_string</a>&nbsp;(name, value)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Config.new"></a><strong>Config.new</strong>&nbsp;()</dt>
+<dd>
+Create a new Config object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_new">git_config_new</a>:<p><p>This object is empty, so you have to add a file to it before you can do anything with it.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Config.html">Config</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config.open"></a><strong>Config.open</strong>&nbsp;(path)</dt>
+<dd>
+Create a new Config object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_open_ondisk">git_config_open_ondisk</a>:<p><p>This method is a simple utility wrapper for the following sequence of calls: - git_config_new - git_config_add_file_ondisk
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ path: Path to the on-disk file to open. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Config.html">Config</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:add_file_ondisk"></a><strong>Config:add_file_ondisk</strong>&nbsp;(path, priority)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_add_file_ondisk">git_config_add_file_ondisk</a>:<p><p>The on-disk file pointed at by `path` will be opened and parsed; it's expected to be a native Git config file following the default Git config syntax (see man git-config).<p> Note that the configuration object will free the file automatically.<p> Further queries on this config object will access each of the config file instances in order (instances with a higher priority will be accessed first).
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ path: path to the configuration file (backend) to add. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ priority: the priority the backend should have. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:delete"></a><strong>Config:delete</strong>&nbsp;(name)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_delete">git_config_delete</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: the variable to delete. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:free"></a><strong>Config:free</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector). <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_free">git_config_free</a>:<p><p>
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:get_bool"></a><strong>Config:get_bool</strong>&nbsp;(name)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_get_bool">git_config_get_bool</a>:<p><p>This function uses the usual C convention of 0 being false and anything else true.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: the variable's name. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>boolean</code> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:get_int32"></a><strong>Config:get_int32</strong>&nbsp;(name)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>integer</code> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:get_int64"></a><strong>Config:get_int64</strong>&nbsp;(name)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>integer</code> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:get_string"></a><strong>Config:get_string</strong>&nbsp;(name)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_get_string">git_config_get_string</a>:<p><p>The string is owned by the variable and should not be freed by the user.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: the variable's name. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>string</code> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:set_bool"></a><strong>Config:set_bool</strong>&nbsp;(value, name)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_set_bool">git_config_set_bool</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ value: the value to store. Must be of type <code>boolean</code>.
+ </li>
+
+ <li>
+ name: the variable's name. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:set_int32"></a><strong>Config:set_int32</strong>&nbsp;(name, value)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ value: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:set_int64"></a><strong>Config:set_int64</strong>&nbsp;(name, value)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ value: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Config:set_string"></a><strong>Config:set_string</strong>&nbsp;(name, value)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/config/git_config_set_string">git_config_set_string</a>:<p><p>A copy of the string is made and the user is free to use it afterwards.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: the variable's name. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ value: the string to store.. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/Index.html b/docs/modules/Index.html
new file mode 100644
index 0000000..8857b39
--- /dev/null
+++ b/docs/modules/Index.html
@@ -0,0 +1,757 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li><strong>Index</strong></li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Index</code></h1>
+
+<p>Class "Index". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Index.bare">Index.bare</a>&nbsp;(index_path)</td>
+ <td class="summary">Create a new Index object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:add">Index:add</a>&nbsp;(path, stage)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:add2">Index:add2</a>&nbsp;(source_entry)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:append">Index:append</a>&nbsp;(path, stage)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:append2">Index:append2</a>&nbsp;(source_entry)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:clear">Index:clear</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:entrycount">Index:entrycount</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:entrycount_unmerged">Index:entrycount_unmerged</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:find">Index:find</a>&nbsp;(path)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:get">Index:get</a>&nbsp;(n)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:get_unmerged_byindex">Index:get_unmerged_byindex</a>&nbsp;(n)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:get_unmerged_bypath">Index:get_unmerged_bypath</a>&nbsp;(path)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:read">Index:read</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:read_tree">Index:read_tree</a>&nbsp;(tree)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:remove">Index:remove</a>&nbsp;(position)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:uniq">Index:uniq</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Index:write">Index:write</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Index.bare"></a><strong>Index.bare</strong>&nbsp;(index_path)</dt>
+<dd>
+Create a new Index object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_open">git_index_open</a>:<p><p>Since there is no ODB or working directory behind this index, any Index methods which rely on these (e.g. index_add) will fail with the GIT_EBAREINDEX error code.<p> If you need to access the index of an actual repository, use the `git_repository_index` wrapper.<p> The index must be freed once it's no longer in use.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ index_path: the path to the index file in disk. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Index.html">Index</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:add"></a><strong>Index:add</strong>&nbsp;(path, stage)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_add">git_index_add</a>:<p><p>The file `path` must be relative to the repository's working folder and must be readable.<p> This method will fail in bare index instances.<p> This forces the file to be added to the index, not looking at gitignore rules. Those rules can be evaluated through the git_status APIs (in status.h) before calling this.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ path: filename to add. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ stage: stage for the entry. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:add2"></a><strong>Index:add2</strong>&nbsp;(source_entry)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ source_entry: Must be of type <a href="IndexEntry.html">IndexEntry</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:append"></a><strong>Index:append</strong>&nbsp;(path, stage)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_append">git_index_append</a>:<p><p>A new entry will always be inserted into the index; if the index already contains an entry for such path, the old entry will **not** be replaced.<p> The file `path` must be relative to the repository's working folder and must be readable.<p> This method will fail in bare index instances.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ path: filename to add. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ stage: stage for the entry. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:append2"></a><strong>Index:append2</strong>&nbsp;(source_entry)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ source_entry: Must be of type <a href="IndexEntry.html">IndexEntry</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:clear"></a><strong>Index:clear</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_clear">git_index_clear</a>:<p><p>
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:entrycount"></a><strong>Index:entrycount</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_entrycount">git_index_entrycount</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:entrycount_unmerged"></a><strong>Index:entrycount_unmerged</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_entrycount_unmerged">git_index_entrycount_unmerged</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:find"></a><strong>Index:find</strong>&nbsp;(path)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_find">git_index_find</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ path: path to search. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:get"></a><strong>Index:get</strong>&nbsp;(n)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_get">git_index_get</a>:<p><p>This entry can be modified, and the changes will be written back to disk on the next write() call.<p> The entry should not be freed by the caller.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ n: the position of the entry. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="IndexEntry.html">IndexEntry</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:get_unmerged_byindex"></a><strong>Index:get_unmerged_byindex</strong>&nbsp;(n)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_get_unmerged_byindex">git_index_get_unmerged_byindex</a>:<p><p>The returned entry is read-only and should not be modified of freed by the caller.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ n: the position of the entry. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="IndexEntryUnmerged.html">IndexEntryUnmerged</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:get_unmerged_bypath"></a><strong>Index:get_unmerged_bypath</strong>&nbsp;(path)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_get_unmerged_bypath">git_index_get_unmerged_bypath</a>:<p><p>The returned entry is read-only and should not be modified of freed by the caller.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ path: path to search. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="IndexEntryUnmerged.html">IndexEntryUnmerged</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:read"></a><strong>Index:read</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_read">git_index_read</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:read_tree"></a><strong>Index:read_tree</strong>&nbsp;(tree)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_read_tree">git_index_read_tree</a>:<p><p>The current index contents will be replaced by the specified tree.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ tree: tree to read. Must be of type <a href="Tree.html">Tree</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:remove"></a><strong>Index:remove</strong>&nbsp;(position)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_remove">git_index_remove</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ position: position of the entry to remove. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:uniq"></a><strong>Index:uniq</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_uniq">git_index_uniq</a>:<p><p>
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Index:write"></a><strong>Index:write</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_write">git_index_write</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/IndexEntry.html b/docs/modules/IndexEntry.html
new file mode 100644
index 0000000..4ff440e
--- /dev/null
+++ b/docs/modules/IndexEntry.html
@@ -0,0 +1,640 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li><strong>IndexEntry</strong></li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>IndexEntry</code></h1>
+
+<p>Class "IndexEntry". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry.new">IndexEntry.new</a>&nbsp;()</td>
+ <td class="summary">Create a new IndexEntry object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:ctime">IndexEntry:ctime</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:dev">IndexEntry:dev</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:file_size">IndexEntry:file_size</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:flags">IndexEntry:flags</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:flags_extended">IndexEntry:flags_extended</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:gid">IndexEntry:gid</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:ino">IndexEntry:ino</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:mode">IndexEntry:mode</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:mtime">IndexEntry:mtime</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:oid">IndexEntry:oid</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:path">IndexEntry:path</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:set_ctime">IndexEntry:set_ctime</a>&nbsp;(secs, nanosecs)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:set_mtime">IndexEntry:set_mtime</a>&nbsp;(secs, nanosecs)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:set_path">IndexEntry:set_path</a>&nbsp;(val)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:stage">IndexEntry:stage</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntry:uid">IndexEntry:uid</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="IndexEntry.new"></a><strong>IndexEntry.new</strong>&nbsp;()</dt>
+<dd>
+Create a new IndexEntry object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="IndexEntry.html">IndexEntry</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:ctime"></a><strong>IndexEntry:ctime</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>integer</code>.
+
+ <li><code>integer</code>.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:dev"></a><strong>IndexEntry:dev</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:file_size"></a><strong>IndexEntry:file_size</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:flags"></a><strong>IndexEntry:flags</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:flags_extended"></a><strong>IndexEntry:flags_extended</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:gid"></a><strong>IndexEntry:gid</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:ino"></a><strong>IndexEntry:ino</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:mode"></a><strong>IndexEntry:mode</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:mtime"></a><strong>IndexEntry:mtime</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>integer</code>.
+
+ <li><code>integer</code>.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:oid"></a><strong>IndexEntry:oid</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:path"></a><strong>IndexEntry:path</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:set_ctime"></a><strong>IndexEntry:set_ctime</strong>&nbsp;(secs, nanosecs)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ secs: Must be of type <code>integer</code>.
+ </li>
+
+ <li>
+ nanosecs: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:set_mtime"></a><strong>IndexEntry:set_mtime</strong>&nbsp;(secs, nanosecs)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ secs: Must be of type <code>integer</code>.
+ </li>
+
+ <li>
+ nanosecs: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:set_path"></a><strong>IndexEntry:set_path</strong>&nbsp;(val)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ val: Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:stage"></a><strong>IndexEntry:stage</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/index/git_index_entry_stage">git_index_entry_stage</a>:<p><p>This entry is calculated from the entrie's flag
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntry:uid"></a><strong>IndexEntry:uid</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/IndexEntryUnmerged.html b/docs/modules/IndexEntryUnmerged.html
new file mode 100644
index 0000000..e8e5b22
--- /dev/null
+++ b/docs/modules/IndexEntryUnmerged.html
@@ -0,0 +1,270 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li><strong>IndexEntryUnmerged</strong></li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>IndexEntryUnmerged</code></h1>
+
+<p>Class "IndexEntryUnmerged". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntryUnmerged:mode">IndexEntryUnmerged:mode</a>&nbsp;(idx)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntryUnmerged:oid">IndexEntryUnmerged:oid</a>&nbsp;(idx)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#IndexEntryUnmerged:path">IndexEntryUnmerged:path</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="IndexEntryUnmerged:mode"></a><strong>IndexEntryUnmerged:mode</strong>&nbsp;(idx)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ idx: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntryUnmerged:oid"></a><strong>IndexEntryUnmerged:oid</strong>&nbsp;(idx)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ idx: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="IndexEntryUnmerged:path"></a><strong>IndexEntryUnmerged:path</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/ODB.html b/docs/modules/ODB.html
new file mode 100644
index 0000000..1076315
--- /dev/null
+++ b/docs/modules/ODB.html
@@ -0,0 +1,656 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li><strong>ODB</strong></li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>ODB</code></h1>
+
+<p>Class "ODB". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB.hash">ODB.hash</a>&nbsp;(data, otype)</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB.hashfile">ODB.hashfile</a>&nbsp;(path, otype)</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB.new">ODB.new</a>&nbsp;()</td>
+ <td class="summary">Create a new ODB object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB.open">ODB.open</a>&nbsp;(object_dir)</td>
+ <td class="summary">Create a new ODB object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB:add_alternate">ODB:add_alternate</a>&nbsp;(backend, priority)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB:add_backend">ODB:add_backend</a>&nbsp;(backend, priority)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB:exists">ODB:exists</a>&nbsp;(id)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB:free">ODB:free</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB:read">ODB:read</a>&nbsp;(id)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB:read_header">ODB:read_header</a>&nbsp;(id)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB:read_prefix">ODB:read_prefix</a>&nbsp;(short_id, len)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#ODB:write">ODB:write</a>&nbsp;(data, type)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="ODB.hash"></a><strong>ODB.hash</strong>&nbsp;(data, otype)</dt>
+<dd>
+module function. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_hash">git_odb_hash</a>:<p><p>The resulting SHA-1 OID will the itentifier for the data buffer as if the data buffer it were to written to the ODB.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ data: data to hash. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ otype: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="OID.html">OID</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB.hashfile"></a><strong>ODB.hashfile</strong>&nbsp;(path, otype)</dt>
+<dd>
+module function. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_hashfile">git_odb_hashfile</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ path: file to read and determine object id for. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ otype: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="OID.html">OID</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB.new"></a><strong>ODB.new</strong>&nbsp;()</dt>
+<dd>
+Create a new ODB object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_new">git_odb_new</a>:<p><p>Before the ODB can be used for read/writing, a custom database backend must be manually added using `git_odb_add_backend()`
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="ODB.html">ODB</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB.open"></a><strong>ODB.open</strong>&nbsp;(object_dir)</dt>
+<dd>
+Create a new ODB object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_open">git_odb_open</a>:<p><p>- git_odb_backend_loose: read and write loose object files from disk, assuming `objects_dir` as the Objects folder<p> - git_odb_backend_pack: read objects from packfiles, assuming `objects_dir` as the Objects folder which contains a 'pack/' folder with the corresponding data
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ object_dir: Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="ODB.html">ODB</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB:add_alternate"></a><strong>ODB:add_alternate</strong>&nbsp;(backend, priority)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ backend: Must be of type <a href="ODBBackend.html">ODBBackend</a>.
+ </li>
+
+ <li>
+ priority: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB:add_backend"></a><strong>ODB:add_backend</strong>&nbsp;(backend, priority)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ backend: Must be of type <a href="ODBBackend.html">ODBBackend</a>.
+ </li>
+
+ <li>
+ priority: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB:exists"></a><strong>ODB:exists</strong>&nbsp;(id)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_exists">git_odb_exists</a>:<p><p>@return - 1, if the object was found - 0, otherwise
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ id: the object to search for.. Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB:free"></a><strong>ODB:free</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector). <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_free">git_odb_free</a>:<p><p>
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB:read"></a><strong>ODB:read</strong>&nbsp;(id)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_read">git_odb_read</a>:<p><p>This method queries all available ODB backends trying to read the given OID.<p> The returned object is reference counted and internally cached, so it should be closed by the user once it's no longer in use.<p> @return - 0 if the object was read; - GIT_ENOTFOUND if the object is not in the database.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ id: identity of the object to read.. Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="OdbObject.html">OdbObject</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB:read_header"></a><strong>ODB:read_header</strong>&nbsp;(id)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_read_header">git_odb_read_header</a>:<p><p>The header includes the length and the type of an object.<p> Note that most backends do not support reading only the header of an object, so the whole object will be read and then the header will be returned.<p> @return - 0 if the object was read; - GIT_ENOTFOUND if the object is not in the database.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ id: identity of the object to read.. Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>integer</code> or <code>nil</code> on error.
+
+ <li><code>string</code> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB:read_prefix"></a><strong>ODB:read_prefix</strong>&nbsp;(short_id, len)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_read_prefix">git_odb_read_prefix</a>:<p><p>This method queries all available ODB backends trying to match the 'len' first hexadecimal characters of the 'short_id'. The remaining (GIT_OID_HEXSZ-len)*4 bits of 'short_id' must be 0s. 'len' must be at least GIT_OID_MINPREFIXLEN, and the prefix must be long enough to identify a unique object in all the backends; the method will fail otherwise.<p> The returned object is reference counted and internally cached, so it should be closed by the user once it's no longer in use.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ short_id: a prefix of the id of the object to read.. Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+ <li>
+ len: the length of the prefix. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="OdbObject.html">OdbObject</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="ODB:write"></a><strong>ODB:write</strong>&nbsp;(data, type)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_write">git_odb_write</a>:<p><p>This method writes a full object straight into the ODB. For most cases, it is preferred to write objects through a write stream, which is both faster and less memory intensive, specially for big objects.<p> This method is provided for compatibility with custom backends which are not able to support streaming writes
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ data: buffer with the data to storr. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ type: type of the data to store. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="OID.html">OID</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/ODBBackend.html b/docs/modules/ODBBackend.html
new file mode 100644
index 0000000..3d1dfbc
--- /dev/null
+++ b/docs/modules/ODBBackend.html
@@ -0,0 +1,202 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li><strong>ODBBackend</strong></li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>ODBBackend</code></h1>
+
+<p>Class "ODBBackend". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#ODBBackend.new">ODBBackend.new</a>&nbsp;()</td>
+ <td class="summary">Create a new ODBBackend object.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="ODBBackend.new"></a><strong>ODBBackend.new</strong>&nbsp;()</dt>
+<dd>
+Create a new ODBBackend object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="ODBBackend.html">ODBBackend</a>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/OID.html b/docs/modules/OID.html
new file mode 100644
index 0000000..4e86584
--- /dev/null
+++ b/docs/modules/OID.html
@@ -0,0 +1,360 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li><strong>OID</strong></li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>OID</code></h1>
+
+<p>Class "OID". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#OID.hex">OID.hex</a>&nbsp;(str)</td>
+ <td class="summary">Create a new OID object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OID.raw">OID.raw</a>&nbsp;(raw)</td>
+ <td class="summary">Create a new OID object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OID:fmt">OID:fmt</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OID:pathfmt">OID:pathfmt</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OID_mt:__eq">OID_mt:__eq</a>&nbsp;(id)</td>
+ <td class="summary">object meta method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OID_mt:__tostring">OID_mt:__tostring</a>&nbsp;()</td>
+ <td class="summary">object meta method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="OID.hex"></a><strong>OID.hex</strong>&nbsp;(str)</dt>
+<dd>
+Create a new OID object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_fromstrn">git_oid_fromstrn</a>:<p><p>If N is odd, N-1 characters will be parsed instead. The remaining space in the git_oid will be set to zero.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ str: input hex string of at least size `length`. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="OID.html">OID</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OID.raw"></a><strong>OID.raw</strong>&nbsp;(raw)</dt>
+<dd>
+Create a new OID object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_fromraw">git_oid_fromraw</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ raw: the raw input bytes to be copied.. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OID:fmt"></a><strong>OID:fmt</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OID:pathfmt"></a><strong>OID:pathfmt</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OID_mt:__eq"></a><strong>OID_mt:__eq</strong>&nbsp;(id)</dt>
+<dd>
+object meta method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_cmp">git_oid_cmp</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ id: Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OID_mt:__tostring"></a><strong>OID_mt:__tostring</strong>&nbsp;()</dt>
+<dd>
+object meta method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/OID_Shorten.html b/docs/modules/OID_Shorten.html
new file mode 100644
index 0000000..07467a7
--- /dev/null
+++ b/docs/modules/OID_Shorten.html
@@ -0,0 +1,251 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li><strong>OID_Shorten</strong></li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>OID_Shorten</code></h1>
+
+<p>Class "OID_Shorten". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#OID_Shorten.new">OID_Shorten.new</a>&nbsp;(min_length)</td>
+ <td class="summary">Create a new OID_Shorten object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OID_Shorten:add">OID_Shorten:add</a>&nbsp;(text_oid)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="OID_Shorten.new"></a><strong>OID_Shorten.new</strong>&nbsp;(min_length)</dt>
+<dd>
+Create a new OID_Shorten object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_shorten_new">git_oid_shorten_new</a>:<p><p>The OID shortener is used to process a list of OIDs in text form and return the shortest length that would uniquely identify all of them.<p> E.g. look at the result of `git log --abbrev`.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ min_length: The minimal length for all identifiers, which will be used even if shorter OIDs would still be unique.. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID_Shorten.html">OID_Shorten</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OID_Shorten:add"></a><strong>OID_Shorten:add</strong>&nbsp;(text_oid)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/oid/git_oid_shorten_add">git_oid_shorten_add</a>:<p><p>The OID is expected to be a 40-char hexadecimal string. The OID is owned by the user and will not be modified or freed.<p> For performance reasons, there is a hard-limit of how many OIDs can be added to a single set (around ~22000, assuming a mostly randomized distribution), which should be enough for any kind of program, and keeps the algorithm fast and memory-efficient.<p> Attempting to add more than those OIDs will result in a GIT_ENOMEM error
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ text_oid: an OID in text form. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/Object.html b/docs/modules/Object.html
new file mode 100644
index 0000000..87ef26e
--- /dev/null
+++ b/docs/modules/Object.html
@@ -0,0 +1,342 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li><strong>Object</strong></li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Object</code></h1>
+
+<p>Class "Object". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Object.string2type">Object.string2type</a>&nbsp;(str)</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object.type2string">Object.type2string</a>&nbsp;(otype)</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:free">Object:free</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:id">Object:id</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:owner">Object:owner</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:type">Object:type</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Object.string2type"></a><strong>Object.string2type</strong>&nbsp;(str)</dt>
+<dd>
+module function.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ str: Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object.type2string"></a><strong>Object.type2string</strong>&nbsp;(otype)</dt>
+<dd>
+module function.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ otype: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:free"></a><strong>Object:free</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector). <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing object; note that git_objects are owned and cached by the repository so the object may or may not be freed after this library call, depending on how agressive is the caching mechanism used by the repository.<p> IMPORTANT: It *is* necessary to call this method when you stop using an object. Failure to do so will cause a memory leak.
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:id"></a><strong>Object:id</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:owner"></a><strong>Object:owner</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without affecting the object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Repository.html">Repository</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:type"></a><strong>Object:type</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/OdbObject.html b/docs/modules/OdbObject.html
new file mode 100644
index 0000000..971953a
--- /dev/null
+++ b/docs/modules/OdbObject.html
@@ -0,0 +1,299 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li><strong>OdbObject</strong></li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>OdbObject</code></h1>
+
+<p>Class "OdbObject". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#OdbObject:data">OdbObject:data</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OdbObject:free">OdbObject:free</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OdbObject:id">OdbObject:id</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OdbObject:size">OdbObject:size</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#OdbObject:type">OdbObject:type</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="OdbObject:data"></a><strong>OdbObject:data</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_data">git_odb_object_data</a>:<p><p>This is the uncompressed, raw data as read from the ODB, without the leading header.<p> This pointer is owned by the object and shall not be free'd. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_size">git_odb_object_size</a>:<p><p>This is the real size of the `data` buffer, not the actual size of the object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OdbObject:free"></a><strong>OdbObject:free</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector). <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_free">git_odb_object_free</a>:<p><p>This method must always be called once a `git_odb_object` is no longer needed, otherwise memory will leak.
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OdbObject:id"></a><strong>OdbObject:id</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_id">git_odb_object_id</a>:<p><p>This is the OID from which the object was read from
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OdbObject:size"></a><strong>OdbObject:size</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_size">git_odb_object_size</a>:<p><p>This is the real size of the `data` buffer, not the actual size of the object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="OdbObject:type"></a><strong>OdbObject:type</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/odb/git_odb_object_type">git_odb_object_type</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/Reference.html b/docs/modules/Reference.html
new file mode 100644
index 0000000..9e9bfc7
--- /dev/null
+++ b/docs/modules/Reference.html
@@ -0,0 +1,616 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li><strong>Reference</strong></li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Reference</code></h1>
+
+<p>Class "Reference". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference.list">Reference.list</a>&nbsp;(repo, list_flags)</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference.lookup">Reference.lookup</a>&nbsp;(repo, name)</td>
+ <td class="summary">Create a new Reference object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference.packall">Reference.packall</a>&nbsp;(repo)</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:delete">Reference:delete</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:name">Reference:name</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:oid">Reference:oid</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:owner">Reference:owner</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:rename">Reference:rename</a>&nbsp;(new_name, force)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:resolve">Reference:resolve</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:set_oid">Reference:set_oid</a>&nbsp;(oid)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:set_target">Reference:set_target</a>&nbsp;(target)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:target">Reference:target</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Reference:type">Reference:type</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Reference.list"></a><strong>Reference.list</strong>&nbsp;(repo, list_flags)</dt>
+<dd>
+module function.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ list_flags: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="StrArray.html">StrArray</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference.lookup"></a><strong>Reference.lookup</strong>&nbsp;(repo, name)</dt>
+<dd>
+Create a new Reference object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_lookup">git_reference_lookup</a>:<p><p>The generated reference must be freed by the user.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: the repository to look up the reference. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ name: the long name for the reference (e.g. HEAD, ref/heads/master, refs/tags/v0.1.0, ...). Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Reference.html">Reference</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference.packall"></a><strong>Reference.packall</strong>&nbsp;(repo)</dt>
+<dd>
+module function. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_packall">git_reference_packall</a>:<p><p>This method will load into the cache all the loose references on the repository and update the `packed-refs` file with them.<p> Once the `packed-refs` file has been written properly, the loose references will be removed from disk.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: Repository where the loose refs will be packed. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:delete"></a><strong>Reference:delete</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_delete">git_reference_delete</a>:<p><p>This method works for both direct and symbolic references.<p> The reference will be immediately removed on disk and from memory. The given reference pointer will no longer be valid.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:name"></a><strong>Reference:name</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_name">git_reference_name</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:oid"></a><strong>Reference:oid</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_oid">git_reference_oid</a>:<p><p>Only available if the reference is direct (i.e. not symbolic)
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:owner"></a><strong>Reference:owner</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_owner">git_reference_owner</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Repository.html">Repository</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:rename"></a><strong>Reference:rename</strong>&nbsp;(new_name, force)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_rename">git_reference_rename</a>:<p><p>This method works for both direct and symbolic references. The new name will be checked for validity and may be modified into a normalized form.<p> The given git_reference will be updated in place.<p> The reference will be immediately renamed in-memory and on disk.<p> If the `force` flag is not enabled, and there's already a reference with the given name, the renaming will fail.<p> IMPORTANT: The user needs to write a proper reflog entry if the reflog is enabled for the repository. We only rename the reflog if it exists.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ new_name: The new name for the reference. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ force: Overwrite an existing reference. Must be of type <code>boolean</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:resolve"></a><strong>Reference:resolve</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_resolve">git_reference_resolve</a>:<p><p>Thie method iteratively peels a symbolic reference until it resolves to a direct reference to an OID.<p> The peeled reference is returned in the `resolved_ref` argument, and must be freed manually once it's no longer needed.<p> If a direct reference is passed as an argument, a copy of that reference is returned. This copy must be manually freed too.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Reference.html">Reference</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:set_oid"></a><strong>Reference:set_oid</strong>&nbsp;(oid)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_set_oid">git_reference_set_oid</a>:<p><p>The reference must be a direct reference, otherwise this method will fail.<p> The reference will be automatically updated in memory and on disk.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ oid: Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:set_target"></a><strong>Reference:set_target</strong>&nbsp;(target)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_set_target">git_reference_set_target</a>:<p><p>The reference must be a symbolic reference, otherwise this method will fail.<p> The reference will be automatically updated in memory and on disk.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ target: The new target for the reference. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:target"></a><strong>Reference:target</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_target">git_reference_target</a>:<p><p>Only available if the reference is symbolic
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Reference:type"></a><strong>Reference:type</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/reference/git_reference_type">git_reference_type</a>:<p><p>Either direct (GIT_REF_OID) or symbolic (GIT_REF_SYMBOLIC)
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/Repository.html b/docs/modules/Repository.html
new file mode 100644
index 0000000..eb4d77f
--- /dev/null
+++ b/docs/modules/Repository.html
@@ -0,0 +1,668 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li><strong>Repository</strong></li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Repository</code></h1>
+
+<p>Class "Repository". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository.init">Repository.init</a>&nbsp;(path, is_bare)</td>
+ <td class="summary">Create a new Repository object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository.open">Repository.open</a>&nbsp;(path)</td>
+ <td class="summary">Create a new Repository object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:config">Repository:config</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:head">Repository:head</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:head_detached">Repository:head_detached</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:head_orphan">Repository:head_orphan</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:index">Repository:index</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:is_bare">Repository:is_bare</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:is_empty">Repository:is_empty</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:odb">Repository:odb</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:path">Repository:path</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:set_config">Repository:set_config</a>&nbsp;(config)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:set_index">Repository:set_index</a>&nbsp;(index)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:set_odb">Repository:set_odb</a>&nbsp;(odb)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:set_workdir">Repository:set_workdir</a>&nbsp;(workdir)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Repository:workdir">Repository:workdir</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Repository.init"></a><strong>Repository.init</strong>&nbsp;(path, is_bare)</dt>
+<dd>
+Create a new Repository object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_init">git_repository_init</a>:<p><p>TODO: - Reinit the repository
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ path: the path to the repository. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ is_bare: if true, a Git repository without a working directory is created at the pointed path. If false, provided path will be considered as the working directory into which the .git directory will be created.. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Repository.html">Repository</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository.open"></a><strong>Repository.open</strong>&nbsp;(path)</dt>
+<dd>
+Create a new Repository object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_open">git_repository_open</a>:<p><p>The 'path' argument must point to either a git repository folder, or an existing work dir.<p> The method will automatically detect if 'path' is a normal or bare repository or fail is 'path' is neither.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ path: the path to the repository. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Repository.html">Repository</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:config"></a><strong>Repository:config</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_config">git_repository_config</a>:<p><p>If a configuration file has not been set, the default config set for the repository will be returned, including global and system configurations (if they are available).<p> The configuration file must be freed once it's no longer being used by the user.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Config.html">Config</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:head"></a><strong>Repository:head</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_head">git_repository_head</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Reference.html">Reference</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:head_detached"></a><strong>Repository:head_detached</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_head_detached">git_repository_head_detached</a>:<p><p>A repository's HEAD is detached when it points directly to a commit instead of a branch.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>boolean</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:head_orphan"></a><strong>Repository:head_orphan</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_head_orphan">git_repository_head_orphan</a>:<p><p>An orphan branch is one named from HEAD but which doesn't exist in the refs namespace, because it doesn't have any commit to point to.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>boolean</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:index"></a><strong>Repository:index</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_index">git_repository_index</a>:<p><p>If a custom index has not been set, the default index for the repository will be returned (the one located in `.git/index`).<p> The index must be freed once it's no longer being used by the user.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Index.html">Index</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:is_bare"></a><strong>Repository:is_bare</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_is_bare">git_repository_is_bare</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>boolean</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:is_empty"></a><strong>Repository:is_empty</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_is_empty">git_repository_is_empty</a>:<p><p>An empty repository has just been initialized and contains no commits.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>boolean</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:odb"></a><strong>Repository:odb</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_odb">git_repository_odb</a>:<p><p>If a custom ODB has not been set, the default database for the repository will be returned (the one located in `.git/objects`).<p> The ODB must be freed once it's no longer being used by the user.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="ODB.html">ODB</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:path"></a><strong>Repository:path</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_path">git_repository_path</a>:<p><p>This is the path of the `.git` folder for normal repositories, or of the repository itself for bare repositories.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:set_config"></a><strong>Repository:set_config</strong>&nbsp;(config)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_set_config">git_repository_set_config</a>:<p><p>This configuration file will be used for all configuration queries involving this repository.<p> The repository will keep a reference to the config file; the user must still free the config after setting it to the repository, or it will leak.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ config: A Config object. Must be of type <a href="Config.html">Config</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:set_index"></a><strong>Repository:set_index</strong>&nbsp;(index)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_set_index">git_repository_set_index</a>:<p><p>This index will be used for all index-related operations involving this repository.<p> The repository will keep a reference to the index file; the user must still free the index after setting it to the repository, or it will leak.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ index: An index object. Must be of type <a href="Index.html">Index</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:set_odb"></a><strong>Repository:set_odb</strong>&nbsp;(odb)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_set_odb">git_repository_set_odb</a>:<p><p>The ODB will be used for all object-related operations involving this repository.<p> The repository will keep a reference to the ODB; the user must still free the ODB object after setting it to the repository, or it will leak.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ odb: An ODB object. Must be of type <a href="ODB.html">ODB</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:set_workdir"></a><strong>Repository:set_workdir</strong>&nbsp;(workdir)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_set_workdir">git_repository_set_workdir</a>:<p><p>The working directory doesn't need to be the same one that contains the `.git` folder for this repository.<p> If this repository is bare, setting its working directory will turn it into a normal repository, capable of performing all the common workdir operations (checkout, status, index manipulation, etc).
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ workdir: The path to a working directory. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Repository:workdir"></a><strong>Repository:workdir</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/repository/git_repository_workdir">git_repository_workdir</a>:<p><p>If the repository is bare, this function will always return NULL.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/RevWalk.html b/docs/modules/RevWalk.html
new file mode 100644
index 0000000..6e99863
--- /dev/null
+++ b/docs/modules/RevWalk.html
@@ -0,0 +1,428 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li><strong>RevWalk</strong></li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>RevWalk</code></h1>
+
+<p>Class "RevWalk". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#RevWalk.new">RevWalk.new</a>&nbsp;(repo)</td>
+ <td class="summary">Create a new RevWalk object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#RevWalk:close">RevWalk:close</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#RevWalk:hide">RevWalk:hide</a>&nbsp;(id)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#RevWalk:next">RevWalk:next</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#RevWalk:push">RevWalk:push</a>&nbsp;(id)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#RevWalk:repository">RevWalk:repository</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#RevWalk:reset">RevWalk:reset</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#RevWalk:sorting">RevWalk:sorting</a>&nbsp;(sort_mode)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="RevWalk.new"></a><strong>RevWalk.new</strong>&nbsp;(repo)</dt>
+<dd>
+Create a new RevWalk object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_new">git_revwalk_new</a>:<p><p>This revision walker uses a custom memory pool and an internal commit cache, so it is relatively expensive to allocate.<p> For maximum performance, this revision walker should be reused for different walks.<p> This revision walker is *not* thread safe: it may only be used to walk a repository on a single thread; however, it is possible to have several revision walkers in several different threads walking the same repository.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: the repo to walk through. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="RevWalk.html">RevWalk</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="RevWalk:close"></a><strong>RevWalk:close</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector). <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_free">git_revwalk_free</a>:<p><p>
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="RevWalk:hide"></a><strong>RevWalk:hide</strong>&nbsp;(id)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_hide">git_revwalk_hide</a>:<p><p>The given OID must belong to a commit on the walked repository.<p> The resolved commit and all its parents will be hidden from the output on the revision walk.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ id: Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="RevWalk:next"></a><strong>RevWalk:next</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_next">git_revwalk_next</a>:<p><p>The initial call to this method is *not* blocking when iterating through a repo with a time-sorting mode.<p> Iterating with Topological or inverted modes makes the initial call blocking to preprocess the commit list, but this block should be mostly unnoticeable on most repositories (topological preprocessing times at 0.3s on the git.git repo).<p> The revision walker is reset when the walk is over.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="OID.html">OID</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="RevWalk:push"></a><strong>RevWalk:push</strong>&nbsp;(id)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_push">git_revwalk_push</a>:<p><p>The given OID must belong to a commit on the walked repository.<p> The given commit will be used as one of the roots when starting the revision walk. At least one commit must be pushed the repository before a walk can be started.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ id: Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>true</code> if no error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="RevWalk:repository"></a><strong>RevWalk:repository</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_repository">git_revwalk_repository</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Repository.html">Repository</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="RevWalk:reset"></a><strong>RevWalk:reset</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_reset">git_revwalk_reset</a>:<p><p>This will clear all the pushed and hidden commits, and leave the walker in a blank state (just like at creation) ready to receive new commit pushes and start a new walk.<p> The revision walk is automatically reset when a walk is over.
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="RevWalk:sorting"></a><strong>RevWalk:sorting</strong>&nbsp;(sort_mode)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/revwalk/git_revwalk_sorting">git_revwalk_sorting</a>:<p><p>Changing the sorting mode resets the walker.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ sort_mode: combination of GIT_SORT_XXX flags. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/Signature.html b/docs/modules/Signature.html
new file mode 100644
index 0000000..66eca21
--- /dev/null
+++ b/docs/modules/Signature.html
@@ -0,0 +1,354 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li><strong>Signature</strong></li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Signature</code></h1>
+
+<p>Class "Signature". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Signature.new">Signature.new</a>&nbsp;(name, email, time, offset)</td>
+ <td class="summary">Create a new Signature object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Signature.now">Signature.now</a>&nbsp;(name, email)</td>
+ <td class="summary">Create a new Signature object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Signature:email">Signature:email</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Signature:name">Signature:name</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Signature:when">Signature:when</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Signature.new"></a><strong>Signature.new</strong>&nbsp;(name, email, time, offset)</dt>
+<dd>
+Create a new Signature object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/signature/git_signature_new">git_signature_new</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: name of the person. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ email: email of the person. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ time: time when the action happened. Must be of type <code>integer</code>.
+ </li>
+
+ <li>
+ offset: timezone offset in minutes for the time. Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Signature.html">Signature</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Signature.now"></a><strong>Signature.now</strong>&nbsp;(name, email)</dt>
+<dd>
+Create a new Signature object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/signature/git_signature_now">git_signature_now</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ name: name of the person. Must be of type <code>string</code>.
+ </li>
+
+ <li>
+ email: email of the person. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Signature.html">Signature</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Signature:email"></a><strong>Signature:email</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Signature:name"></a><strong>Signature:name</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Signature:when"></a><strong>Signature:when</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><code>integer</code>.
+
+ <li><code>integer</code>.
+
+</ol>
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/StrArray.html b/docs/modules/StrArray.html
new file mode 100644
index 0000000..1fad380
--- /dev/null
+++ b/docs/modules/StrArray.html
@@ -0,0 +1,308 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li><strong>StrArray</strong></li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>StrArray</code></h1>
+
+<p>Class "StrArray". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#StrArray.new">StrArray.new</a>&nbsp;()</td>
+ <td class="summary">Create a new StrArray object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#StrArray:count">StrArray:count</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#StrArray:free">StrArray:free</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#StrArray:get_array">StrArray:get_array</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#StrArray:str">StrArray:str</a>&nbsp;(n)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="StrArray.new"></a><strong>StrArray.new</strong>&nbsp;()</dt>
+<dd>
+Create a new StrArray object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="StrArray.html">StrArray</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="StrArray:count"></a><strong>StrArray:count</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="StrArray:free"></a><strong>StrArray:free</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector).
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="StrArray:get_array"></a><strong>StrArray:get_array</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>nil</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="StrArray:str"></a><strong>StrArray:str</strong>&nbsp;(n)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ n: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/Tag.html b/docs/modules/Tag.html
new file mode 100644
index 0000000..7bc7d6a
--- /dev/null
+++ b/docs/modules/Tag.html
@@ -0,0 +1,424 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li><strong>Tag</strong></li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Tag</code></h1>
+
+<p>Class "Tag". Extends <a href="Object.html">Object</a><br /></p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:free">Object:free</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:id">Object:id</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:owner">Object:owner</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:type">Object:type</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Tag.lookup">Tag.lookup</a>&nbsp;(repo, id)</td>
+ <td class="summary">Create a new Tag object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Tag:message">Tag:message</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Tag:name">Tag:name</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Tag:tagger">Tag:tagger</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Tag:target">Tag:target</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Object:free"></a><strong>Object:free</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector). <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing object; note that git_objects are owned and cached by the repository so the object may or may not be freed after this library call, depending on how agressive is the caching mechanism used by the repository.<p> IMPORTANT: It *is* necessary to call this method when you stop using an object. Failure to do so will cause a memory leak.
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:id"></a><strong>Object:id</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:owner"></a><strong>Object:owner</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without affecting the object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Repository.html">Repository</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:type"></a><strong>Object:type</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Tag.lookup"></a><strong>Tag.lookup</strong>&nbsp;(repo, id)</dt>
+<dd>
+Create a new Tag object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_lookup">git_tag_lookup</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: the repo to use when locating the tag.. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ id: identity of the tag to locate.. Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Tag.html">Tag</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Tag:message"></a><strong>Tag:message</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_message">git_tag_message</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Tag:name"></a><strong>Tag:name</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_name">git_tag_name</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Tag:tagger"></a><strong>Tag:tagger</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_tagger">git_tag_tagger</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Signature.html">Signature</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Tag:target"></a><strong>Tag:target</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tag/git_tag_target">git_tag_target</a>:<p><p>This method performs a repository lookup for the given object and returns it
+
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Object.html">Object</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/Tree.html b/docs/modules/Tree.html
new file mode 100644
index 0000000..d7b8481
--- /dev/null
+++ b/docs/modules/Tree.html
@@ -0,0 +1,411 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li><strong>Tree</strong></li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>Tree</code></h1>
+
+<p>Class "Tree". Extends <a href="Object.html">Object</a><br /></p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:free">Object:free</a>&nbsp;()</td>
+ <td class="summary">Destroy this object (will be called by Garbage Collector).</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:id">Object:id</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:owner">Object:owner</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Object:type">Object:type</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Tree.lookup">Tree.lookup</a>&nbsp;(repo, id)</td>
+ <td class="summary">Create a new Tree object.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Tree:entry_byindex">Tree:entry_byindex</a>&nbsp;(index)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Tree:entry_byname">Tree:entry_byname</a>&nbsp;(filename)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#Tree:entrycount">Tree:entrycount</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="Object:free"></a><strong>Object:free</strong>&nbsp;()</dt>
+<dd>
+Destroy this object (will be called by Garbage Collector). <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_free">git_object_free</a>:<p><p>This method instructs the library to close an existing object; note that git_objects are owned and cached by the repository so the object may or may not be freed after this library call, depending on how agressive is the caching mechanism used by the repository.<p> IMPORTANT: It *is* necessary to call this method when you stop using an object. Failure to do so will cause a memory leak.
+
+
+
+
+
+
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:id"></a><strong>Object:id</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_id">git_object_id</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:owner"></a><strong>Object:owner</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_owner">git_object_owner</a>:<p><p>Freeing or calling `git_repository_close` on the returned pointer will invalidate the actual object.<p> Any other operation may be run on the repository without affecting the object.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="Repository.html">Repository</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Object:type"></a><strong>Object:type</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/object/git_object_type">git_object_type</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Tree.lookup"></a><strong>Tree.lookup</strong>&nbsp;(repo, id)</dt>
+<dd>
+Create a new Tree object. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_lookup">git_tree_lookup</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: the repo to use when locating the tree.. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ id: identity of the tree to locate.. Must be of type <a href="OID.html">OID</a>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Tree.html">Tree</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Tree:entry_byindex"></a><strong>Tree:entry_byindex</strong>&nbsp;(index)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entry_byindex">git_tree_entry_byindex</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ index: Must be of type <code>integer</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="TreeEntry.html">TreeEntry</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Tree:entry_byname"></a><strong>Tree:entry_byname</strong>&nbsp;(filename)</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entry_byname">git_tree_entry_byname</a>:<p><p>
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ filename: the filename of the desired entry. Must be of type <code>string</code>.
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="TreeEntry.html">TreeEntry</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="Tree:entrycount"></a><strong>Tree:entrycount</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entrycount">git_tree_entrycount</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/TreeEntry.html b/docs/modules/TreeEntry.html
new file mode 100644
index 0000000..2033128
--- /dev/null
+++ b/docs/modules/TreeEntry.html
@@ -0,0 +1,296 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li><strong>TreeEntry</strong></li>
+
+ <li>
+ <a href="../modules/git2.html">git2</a>
+ </li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>TreeEntry</code></h1>
+
+<p>Class "TreeEntry". </p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#TreeEntry:attributes">TreeEntry:attributes</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#TreeEntry:id">TreeEntry:id</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#TreeEntry:name">TreeEntry:name</a>&nbsp;()</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+ <tr>
+ <td class="name" nowrap><a href="#TreeEntry:object">TreeEntry:object</a>&nbsp;(repo, object)</td>
+ <td class="summary">object method.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="TreeEntry:attributes"></a><strong>TreeEntry:attributes</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entry_attributes">git_tree_entry_attributes</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>integer</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="TreeEntry:id"></a><strong>TreeEntry:id</strong>&nbsp;()</dt>
+<dd>
+object method.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<a href="OID.html">OID</a>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="TreeEntry:name"></a><strong>TreeEntry:name</strong>&nbsp;()</dt>
+<dd>
+object method. <p>Calls <a href="http://libgit2.github.com/libgit2/#HEAD/group/tree/git_tree_entry_name">git_tree_entry_name</a>:<p><p>
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>string</code>.
+
+
+
+</dd>
+
+
+
+
+<dt><a name="TreeEntry:object"></a><strong>TreeEntry:object</strong>&nbsp;(repo, object)</dt>
+<dd>
+object method.
+
+
+<h3>Parameters</h3>
+<ul>
+
+ <li>
+ repo: repository where to lookup the pointed object. Must be of type <a href="Repository.html">Repository</a>.
+ </li>
+
+ <li>
+ object: pointer to the converted object
+ </li>
+
+</ul>
+
+
+
+
+
+
+<h3>Return values:</h3>
+<ol>
+
+ <li><a href="Object.html">Object</a> or <code>nil</code> on error.
+
+ <li>Error string.
+
+</ol>
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>
diff --git a/docs/modules/git2.html b/docs/modules/git2.html
new file mode 100644
index 0000000..9a44134
--- /dev/null
+++ b/docs/modules/git2.html
@@ -0,0 +1,202 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html>
+<head>
+ <title>Reference</title>
+ <link rel="stylesheet" href="../luadoc.css" type="text/css" />
+ <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->
+</head>
+
+<body>
+<div id="container">
+
+<div id="product">
+ <div id="product_logo"></div>
+ <div id="product_name"><big><b></b></big></div>
+ <div id="product_description"></div>
+</div> <!-- id="product" -->
+
+<div id="main">
+
+<div id="navigation">
+
+
+<h1>LuaDoc</h1>
+<ul>
+
+ <li><a href="../index.html">Index</a></li>
+
+</ul>
+
+
+<!-- Module list -->
+
+<h1>Modules</h1>
+<ul>
+
+ <li>
+ <a href="../modules/Blob.html">Blob</a>
+ </li>
+
+ <li>
+ <a href="../modules/Commit.html">Commit</a>
+ </li>
+
+ <li>
+ <a href="../modules/Config.html">Config</a>
+ </li>
+
+ <li>
+ <a href="../modules/Index.html">Index</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntry.html">IndexEntry</a>
+ </li>
+
+ <li>
+ <a href="../modules/IndexEntryUnmerged.html">IndexEntryUnmerged</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODB.html">ODB</a>
+ </li>
+
+ <li>
+ <a href="../modules/ODBBackend.html">ODBBackend</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID.html">OID</a>
+ </li>
+
+ <li>
+ <a href="../modules/OID_Shorten.html">OID_Shorten</a>
+ </li>
+
+ <li>
+ <a href="../modules/Object.html">Object</a>
+ </li>
+
+ <li>
+ <a href="../modules/OdbObject.html">OdbObject</a>
+ </li>
+
+ <li>
+ <a href="../modules/Reference.html">Reference</a>
+ </li>
+
+ <li>
+ <a href="../modules/Repository.html">Repository</a>
+ </li>
+
+ <li>
+ <a href="../modules/RevWalk.html">RevWalk</a>
+ </li>
+
+ <li>
+ <a href="../modules/Signature.html">Signature</a>
+ </li>
+
+ <li>
+ <a href="../modules/StrArray.html">StrArray</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tag.html">Tag</a>
+ </li>
+
+ <li>
+ <a href="../modules/Tree.html">Tree</a>
+ </li>
+
+ <li>
+ <a href="../modules/TreeEntry.html">TreeEntry</a>
+ </li>
+
+ <li><strong>git2</strong></li>
+
+</ul>
+
+
+
+<!-- File list -->
+
+
+
+
+
+
+</div><!-- id="navigation" -->
+
+<div id="content">
+
+<h1>Module <code>git2</code></h1>
+
+<p>Module git2. See <a href="http://libgit2.github.com/libgit2/#HEAD">libgit2 API docs</a>. <br />Class <a href="StrArray.html">StrArray</a> <br />Class <a href="Repository.html">Repository</a> <br />Class <a href="Config.html">Config</a> <br />Class <a href="OdbObject.html">OdbObject</a> <br />Class <a href="OID.html">OID</a> <br />Class <a href="OID_Shorten.html">OID_Shorten</a> <br />Class <a href="ODB.html">ODB</a> <br />Class <a href="ODBBackend.html">ODBBackend</a> <br />Class <a href="Index.html">Index</a> <br />Class <a href="IndexEntry.html">IndexEntry</a> <br />Class <a href="IndexEntryUnmerged.html">IndexEntryUnmerged</a> <br />Class <a href="Object.html">Object</a> <br />Class <a href="Blob.html">Blob</a> <br />Class <a href="Signature.html">Signature</a> <br />Class <a href="Commit.html">Commit</a> <br />Class <a href="Tree.html">Tree</a> <br />Class <a href="TreeEntry.html">TreeEntry</a> <br />Class <a href="Tag.html">Tag</a> <br />Class <a href="RevWalk.html">RevWalk</a> <br />Class <a href="Reference.html">Reference</a></p>
+
+
+
+
+
+<h2>Functions</h2>
+<table class="function_list">
+
+ <tr>
+ <td class="name" nowrap><a href="#git2.version">git2.version</a>&nbsp;()</td>
+ <td class="summary">module function.</td>
+ </tr>
+
+</table>
+
+
+
+
+
+
+<br/>
+<br/>
+
+
+
+<h2><a name="functions"></a>Functions</h2>
+<dl class="function">
+
+
+
+<dt><a name="git2.version"></a><strong>git2.version</strong>&nbsp;()</dt>
+<dd>
+module function.
+
+
+
+
+
+
+
+<h3>Return value:</h3>
+<code>nil</code>.
+
+
+
+</dd>
+
+
+</dl>
+
+
+
+
+
+
+</div> <!-- id="content" -->
+
+</div> <!-- id="main" -->
+
+<div id="about">
+ <p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /></a></p>
+</div> <!-- id="about" -->
+
+</div> <!-- id="container" -->
+</body>
+</html>