{"files":[{"file":"blob.h","functions":["git_blob_lookup","git_blob_close","git_blob_rawcontent","git_blob_rawsize","git_blob_create_fromfile","git_blob_create_frombuffer"],"meta":{},"lines":117},{"file":"commit.h","functions":["git_commit_lookup","git_commit_close","git_commit_id","git_commit_message_short","git_commit_message","git_commit_time","git_commit_time_offset","git_commit_committer","git_commit_author","git_commit_tree","git_commit_tree_oid","git_commit_parentcount","git_commit_parent","git_commit_parent_oid","git_commit_create","git_commit_create_o","git_commit_create_ov","git_commit_create_v"],"meta":{},"lines":298},{"file":"common.h","functions":[],"meta":{},"lines":92},{"file":"index.h","functions":["git_index_open_bare","git_index_open_inrepo","git_index_clear","git_index_free","git_index_read","git_index_write","git_index_find","git_index_add","git_index_add2","git_index_append","git_index_append2","git_index_remove","git_index_get","git_index_entrycount"],"meta":{},"lines":265},{"file":"object.h","functions":["git_object_lookup","git_object_id","git_object_type","git_object_owner","git_object_close","git_object_type2string","git_object_string2type","git_object_typeisloose","git_object__size"],"meta":{},"lines":142},{"file":"odb.h","functions":["git_odb_new","git_odb_open","git_odb_add_backend","git_odb_add_alternate","git_odb_close","git_odb_read","git_odb_read_header","git_odb_exists","git_odb_write","git_odb_open_wstream","git_odb_open_rstream","git_odb_hash","git_odb_object_close","git_odb_object_id","git_odb_object_data","git_odb_object_size","git_odb_object_type"],"meta":{},"lines":298},{"file":"odb_backend.h","functions":[],"meta":{},"lines":98},{"file":"oid.h","functions":["git_oid_mkstr","git_oid_mkraw","git_oid_fmt","git_oid_pathfmt","git_oid_allocfmt","git_oid_to_string","git_oid_cpy","git_oid_cmp","git_oid_shorten_new","git_oid_shorten_add","git_oid_shorten_free"],"meta":{},"lines":187},{"file":"refs.h","functions":["git_reference_lookup","git_reference_create_symbolic","git_reference_create_symbolic_f","git_reference_create_oid","git_reference_create_oid_f","git_reference_oid","git_reference_target","git_reference_type","git_reference_name","git_reference_resolve","git_reference_owner","git_reference_set_target","git_reference_set_oid","git_reference_rename","git_reference_rename_f","git_reference_delete","git_reference_packall","git_reference_listall","git_reference_listcb"],"meta":{},"lines":321},{"file":"repository.h","functions":["git_repository_open","git_repository_open2","git_repository_open3","git_repository_database","git_repository_index","git_repository_free","git_repository_init","git_repository_is_empty","git_repository_path","git_repository_workdir"],"meta":{},"lines":213},{"file":"revwalk.h","functions":["git_revwalk_new","git_revwalk_reset","git_revwalk_push","git_revwalk_hide","git_revwalk_next","git_revwalk_sorting","git_revwalk_free","git_revwalk_repository"],"meta":{},"lines":183},{"file":"signature.h","functions":["git_signature_new","git_signature_now","git_signature_dup","git_signature_free"],"meta":{},"lines":77},{"file":"tag.h","functions":["git_tag_lookup","git_tag_close","git_tag_id","git_tag_target","git_tag_target_oid","git_tag_type","git_tag_name","git_tag_tagger","git_tag_message","git_tag_create","git_tag_create_o","git_tag_create_frombuffer","git_tag_create_f","git_tag_create_fo","git_tag_delete","git_tag_list"],"meta":{},"lines":293},{"file":"tree.h","functions":["git_tree_lookup","git_tree_close","git_tree_id","git_tree_entrycount","git_tree_entry_byname","git_tree_entry_byindex","git_tree_entry_attributes","git_tree_entry_name","git_tree_entry_id","git_tree_entry_2object","git_tree_create_fromindex","git_treebuilder_create","git_treebuilder_clear","git_treebuilder_free","git_treebuilder_get","git_treebuilder_insert","git_treebuilder_remove","git_treebuilder_filter","git_treebuilder_write"],"meta":{},"lines":262},{"file":"types.h","functions":[],"meta":{},"lines":157}],"functions":{"git_blob_lookup":{"type":"function","file":"blob.h","line":50,"lineto":53,"args":[{"name":"blob","type":"git_blob **","comment":"pointer to the looked up blob"},{"name":"repo","type":"git_repository *","comment":"the repo to use when locating the blob."},{"name":"id","type":"const git_oid *","comment":"identity of the blob to locate."},{"name":"","type":"","comment":null}],"argline":"git_blob **blob, git_repository *repo, const git_oid *id, ","sig":"git_blob **::git_repository *::const git_oid *::","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Lookup a blob object from a repository.

\n","comments":"","group":"blob"},"git_blob_close":{"type":"function","file":"blob.h","line":67,"lineto":70,"args":[{"name":"blob","type":"git_blob *","comment":"the blob to close"},{"name":"","type":"","comment":null}],"argline":"git_blob *blob, ","sig":"git_blob *::","return":{"type":"void","comment":null},"description":"

Close an open blob

\n","comments":"

This is a wrapper around git_object_close()

\n\n

IMPORTANT:\n It is necessary to call this method when you stop\n using a blob. Failure to do so will cause a memory leak.

\n","group":"blob"},"git_blob_rawcontent":{"type":"function","file":"blob.h","line":84,"lineto":84,"args":[{"name":"blob","type":"git_blob *","comment":"pointer to the blob"}],"argline":"git_blob *blob","sig":"git_blob *","return":{"type":"const void *","comment":" the pointer; NULL if the blob has no contents"},"description":"

Get a read-only buffer with the raw content of a blob.

\n","comments":"

A pointer to the raw content of a blob is returned;\n this pointer is owned internally by the object and shall\n not be free'd. The pointer may be invalidated at a later\n time.

\n","group":"blob"},"git_blob_rawsize":{"type":"function","file":"blob.h","line":92,"lineto":92,"args":[{"name":"blob","type":"git_blob *","comment":"pointer to the blob"}],"argline":"git_blob *blob","sig":"git_blob *","return":{"type":"int","comment":" size on bytes"},"description":"

Get the size in bytes of the contents of a blob

\n","comments":"","group":"blob"},"git_blob_create_fromfile":{"type":"function","file":"blob.h","line":105,"lineto":105,"args":[{"name":"oid","type":"git_oid *","comment":"return the id of the written blob"},{"name":"repo","type":"git_repository *","comment":"repository where the blob will be written.\n\tthis repository cannot be bare"},{"name":"path","type":"const char *","comment":"file from which the blob will be created,\n\trelative to the repository's working dir"}],"argline":"git_oid *oid, git_repository *repo, const char *path","sig":"git_oid *::git_repository *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Read a file from the working folder of a repository\n and write it to the Object Database as a loose blob

\n","comments":"","group":"blob"},"git_blob_create_frombuffer":{"type":"function","file":"blob.h","line":117,"lineto":117,"args":[{"name":"oid","type":"git_oid *","comment":"return the oid of the written blob"},{"name":"repo","type":"git_repository *","comment":"repository where to blob will be written"},{"name":"buffer","type":"const void *","comment":"data to be written into the blob"},{"name":"len","type":"size_t","comment":"length of the data"}],"argline":"git_oid *oid, git_repository *repo, const void *buffer, size_t len","sig":"git_oid *::git_repository *::const void *::size_t","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Write an in-memory buffer to the ODB as a blob

\n","comments":"","group":"blob"},"git_commit_lookup":{"type":"function","file":"commit.h","line":51,"lineto":54,"args":[{"name":"commit","type":"git_commit **","comment":"pointer to the looked up commit"},{"name":"repo","type":"git_repository *","comment":"the repo to use when locating the commit."},{"name":"id","type":"const git_oid *","comment":"identity of the commit to locate. If the object is\n an annotated tag it will be peeled back to the commit."},{"name":"","type":"","comment":null}],"argline":"git_commit **commit, git_repository *repo, const git_oid *id, ","sig":"git_commit **::git_repository *::const git_oid *::","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Lookup a commit object from a repository.

\n","comments":"","group":"commit"},"git_commit_close":{"type":"function","file":"commit.h","line":68,"lineto":71,"args":[{"name":"commit","type":"git_commit *","comment":"the commit to close"},{"name":"","type":"","comment":null}],"argline":"git_commit *commit, ","sig":"git_commit *::","return":{"type":"void","comment":null},"description":"

Close an open commit

\n","comments":"

This is a wrapper around git_object_close()

\n\n

IMPORTANT:\n It is necessary to call this method when you stop\n using a commit. Failure to do so will cause a memory leak.

\n","group":"commit"},"git_commit_id":{"type":"function","file":"commit.h","line":79,"lineto":79,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_oid git_oid, git_commit *commit","sig":"git_oid::git_commit *","return":{"type":"const git_oid *","comment":" object identity for the commit."},"description":"

Get the id of a commit.

\n","comments":"","group":"commit"},"git_commit_message_short":{"type":"function","file":"commit.h","line":87,"lineto":87,"args":[{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_commit *commit","sig":"git_commit *","return":{"type":"const char *","comment":" the short message of a commit"},"description":"

Get the short (one line) message of a commit.

\n","comments":"","group":"commit"},"git_commit_message":{"type":"function","file":"commit.h","line":95,"lineto":95,"args":[{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_commit *commit","sig":"git_commit *","return":{"type":"const char *","comment":" the message of a commit"},"description":"

Get the full message of a commit.

\n","comments":"","group":"commit"},"git_commit_time":{"type":"function","file":"commit.h","line":103,"lineto":103,"args":[{"name":"git_time_t","type":"git_time_t","comment":null},{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_time_t git_time_t, git_commit *commit","sig":"git_time_t::git_commit *","return":{"type":"git_time_t","comment":" the time of a commit"},"description":"

Get the commit time (i.e. committer time) of a commit.

\n","comments":"","group":"commit"},"git_commit_time_offset":{"type":"function","file":"commit.h","line":111,"lineto":111,"args":[{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_commit *commit","sig":"git_commit *","return":{"type":"int","comment":" positive or negative timezone offset, in minutes from UTC"},"description":"

Get the commit timezone offset (i.e. committer's preferred timezone) of a commit.

\n","comments":"","group":"commit"},"git_commit_committer":{"type":"function","file":"commit.h","line":119,"lineto":119,"args":[{"name":"git_signature","type":"git_signature","comment":null},{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_signature git_signature, git_commit *commit","sig":"git_signature::git_commit *","return":{"type":"const git_signature *","comment":" the committer of a commit"},"description":"

Get the committer of a commit.

\n","comments":"","group":"commit"},"git_commit_author":{"type":"function","file":"commit.h","line":127,"lineto":127,"args":[{"name":"git_signature","type":"git_signature","comment":null},{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_signature git_signature, git_commit *commit","sig":"git_signature::git_commit *","return":{"type":"const git_signature *","comment":" the author of a commit"},"description":"

Get the author of a commit.

\n","comments":"","group":"commit"},"git_commit_tree":{"type":"function","file":"commit.h","line":136,"lineto":136,"args":[{"name":"tree_out","type":"git_tree **","comment":"pointer where to store the tree object"},{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_tree **tree_out, git_commit *commit","sig":"git_tree **::git_commit *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Get the tree pointed to by a commit.

\n","comments":"","group":"commit"},"git_commit_tree_oid":{"type":"function","file":"commit.h","line":146,"lineto":146,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_oid git_oid, git_commit *commit","sig":"git_oid::git_commit *","return":{"type":"const git_oid *","comment":" the id of tree pointed to by commit."},"description":"

Get the id of the tree pointed to by a commit. This differs from\n git_commit_tree in that no attempts are made to fetch an object\n from the ODB.

\n","comments":"","group":"commit"},"git_commit_parentcount":{"type":"function","file":"commit.h","line":154,"lineto":154,"args":[{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."}],"argline":"git_commit *commit","sig":"git_commit *","return":{"type":"unsigned int","comment":" integer of count of parents"},"description":"

Get the number of parents of this commit

\n","comments":"","group":"commit"},"git_commit_parent":{"type":"function","file":"commit.h","line":164,"lineto":164,"args":[{"name":"parent","type":"git_commit **","comment":"Pointer where to store the parent commit"},{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."},{"name":"n","type":"unsigned int","comment":"the position of the parent (from 0 to `parentcount`)"}],"argline":"git_commit **parent, git_commit *commit, unsigned int n","sig":"git_commit **::git_commit *::unsigned int","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Get the specified parent of the commit.

\n","comments":"","group":"commit"},"git_commit_parent_oid":{"type":"function","file":"commit.h","line":175,"lineto":175,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"commit","type":"git_commit *","comment":"a previously loaded commit."},{"name":"n","type":"unsigned int","comment":"the position of the parent (from 0 to `parentcount`)"}],"argline":"git_oid git_oid, git_commit *commit, unsigned int n","sig":"git_oid::git_commit *::unsigned int","return":{"type":"const git_oid *","comment":" the id of the parent, NULL on error."},"description":"

Get the oid of a specified parent for a commit. This is different from\n git_commit_parent, which will attempt to load the parent commit from\n the ODB.

\n","comments":"","group":"commit"},"git_commit_create":{"type":"function","file":"commit.h","line":215,"lineto":224,"args":[{"name":"oid","type":"git_oid *","comment":"Pointer where to store the OID of the\n\tnewly created commit"},{"name":"repo","type":"git_repository *","comment":"Repository where to store the commit"},{"name":"update_ref","type":"const char *","comment":"If not NULL, name of the reference that\n\twill be updated to point to this commit. If the reference\n\tis not direct, it will be resolved to a direct reference.\n\tUse \"HEAD\" to update the HEAD of the current branch and\n\tmake it point to this commit"},{"name":"author","type":"const git_signature *","comment":"Signature representing the author and the authory\n\ttime of this commit"},{"name":"committer","type":"const git_signature *","comment":"Signature representing the committer and the\n commit time of this commit"},{"name":"message","type":"const char *","comment":"Full message for this commit"},{"name":"tree_oid","type":"const git_oid *","comment":"Object ID of the tree for this commit. Note that\n no validation is performed on this OID. Use the _o variants of\n this method to assure a proper tree is passed to the commit."},{"name":"parent_count","type":"int","comment":"Number of parents for this commit"},{"name":"parent_oids","type":"const git_oid *[]","comment":null}],"argline":"git_oid *oid, git_repository *repo, const char *update_ref, const git_signature *author, const git_signature *committer, const char *message, const git_oid *tree_oid, int parent_count, const git_oid *[] parent_oids","sig":"git_oid *::git_repository *::const char *::const git_signature *::const git_signature *::const char *::const git_oid *::int::const git_oid *[]","return":{"type":"int","comment":" 0 on success; error code otherwise\n\tThe created commit will be written to the Object Database and\n\tthe given reference will be updated to point to it"},"description":"

Create a new commit in the repository

\n","comments":"","group":"commit"},"git_commit_create_o":{"type":"function","file":"commit.h","line":237,"lineto":246,"args":[{"name":"oid","type":"git_oid *","comment":null},{"name":"repo","type":"git_repository *","comment":null},{"name":"update_ref","type":"const char *","comment":null},{"name":"author","type":"const git_signature *","comment":null},{"name":"committer","type":"const git_signature *","comment":null},{"name":"message","type":"const char *","comment":null},{"name":"tree","type":"const git_tree *","comment":null},{"name":"parent_count","type":"int","comment":null},{"name":"parents","type":"const git_commit *[]","comment":null}],"argline":"git_oid *oid, git_repository *repo, const char *update_ref, const git_signature *author, const git_signature *committer, const char *message, const git_tree *tree, int parent_count, const git_commit *[] parents","sig":"git_oid *::git_repository *::const char *::const git_signature *::const git_signature *::const char *::const git_tree *::int::const git_commit *[]","return":{"type":"int","comment":null},"description":"

Create a new commit in the repository using git_object\n instances as parameters.

\n","comments":"

The tree_oid and parent_oids paremeters now take a instance\n of git_tree and git_commit, respectively.

\n\n

All other parameters remain the same

\n","group":"commit"},"git_commit_create_ov":{"type":"function","file":"commit.h","line":264,"lineto":273,"args":[{"name":"oid","type":"git_oid *","comment":null},{"name":"repo","type":"git_repository *","comment":null},{"name":"update_ref","type":"const char *","comment":null},{"name":"author","type":"const git_signature *","comment":null},{"name":"committer","type":"const git_signature *","comment":null},{"name":"message","type":"const char *","comment":null},{"name":"tree","type":"const git_tree *","comment":null},{"name":"parent_count","type":"int","comment":null}],"argline":"git_oid *oid, git_repository *repo, const char *update_ref, const git_signature *author, const git_signature *committer, const char *message, const git_tree *tree, int parent_count","sig":"git_oid *::git_repository *::const char *::const git_signature *::const git_signature *::const char *::const git_tree *::int","return":{"type":"int","comment":null},"description":"

Create a new commit in the repository using git_object\n instances and a variable argument list.

\n","comments":"

The tree_oid paremeter now takes a instance\n of const git_tree *.

\n\n

The parents for the commit are specified as a variable\n list of pointers to const git_commit *. Note that this\n is a convenience method which may not be safe to export\n for certain languages or compilers

\n\n

All other parameters remain the same

\n","group":"commit"},"git_commit_create_v":{"type":"function","file":"commit.h","line":289,"lineto":298,"args":[{"name":"oid","type":"git_oid *","comment":null},{"name":"repo","type":"git_repository *","comment":null},{"name":"update_ref","type":"const char *","comment":null},{"name":"author","type":"const git_signature *","comment":null},{"name":"committer","type":"const git_signature *","comment":null},{"name":"message","type":"const char *","comment":null},{"name":"tree_oid","type":"const git_oid *","comment":null},{"name":"parent_count","type":"int","comment":null}],"argline":"git_oid *oid, git_repository *repo, const char *update_ref, const git_signature *author, const git_signature *committer, const char *message, const git_oid *tree_oid, int parent_count","sig":"git_oid *::git_repository *::const char *::const git_signature *::const git_signature *::const char *::const git_oid *::int","return":{"type":"int","comment":null},"description":"

Create a new commit in the repository using \n a variable argument list.

\n","comments":"

The parents for the commit are specified as a variable\n list of pointers to const git_oid *. Note that this\n is a convenience method which may not be safe to export\n for certain languages or compilers

\n\n

All other parameters remain the same

\n","group":"commit"},"git_index_open_bare":{"type":"function","file":"index.h","line":118,"lineto":118,"args":[{"name":"index","type":"git_index **","comment":"the pointer for the new index"},{"name":"index_path","type":"const char *","comment":"the path to the index file in disk"}],"argline":"git_index **index, const char *index_path","sig":"git_index **::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Create a new Git index object as a memory representation\n of the Git index file in 'index_path', without a repository\n to back it.

\n","comments":"

Since there is no ODB behind this index, any Index methods\n which rely on the ODB (e.g. index_add) will fail with the\n GIT_EBAREINDEX error code.

\n","group":"index"},"git_index_open_inrepo":{"type":"function","file":"index.h","line":128,"lineto":128,"args":[{"name":"index","type":"git_index **","comment":"the pointer for the new index"},{"name":"repo","type":"git_repository *","comment":"the git repo which owns the index"}],"argline":"git_index **index, git_repository *repo","sig":"git_index **::git_repository *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Open the Index inside the git repository pointed\n by 'repo'.

\n","comments":"","group":"index"},"git_index_clear":{"type":"function","file":"index.h","line":137,"lineto":137,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"}],"argline":"git_index *index","sig":"git_index *","return":{"type":"void","comment":null},"description":"

Clear the contents (all the entries) of an index object.\n This clears the index object in memory; changes must be manually\n written to disk for them to take effect.

\n","comments":"","group":"index"},"git_index_free":{"type":"function","file":"index.h","line":144,"lineto":144,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"}],"argline":"git_index *index","sig":"git_index *","return":{"type":"void","comment":null},"description":"

Free an existing index object.

\n","comments":"","group":"index"},"git_index_read":{"type":"function","file":"index.h","line":153,"lineto":153,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"}],"argline":"git_index *index","sig":"git_index *","return":{"type":"int","comment":" 0 on success, otherwise an error code"},"description":"

Update the contents of an existing index object in memory\n by reading from the hard disk.

\n","comments":"","group":"index"},"git_index_write":{"type":"function","file":"index.h","line":162,"lineto":162,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"}],"argline":"git_index *index","sig":"git_index *","return":{"type":"int","comment":" 0 on success, otherwise an error code"},"description":"

Write an existing index object from memory back to disk\n using an atomic file lock.

\n","comments":"","group":"index"},"git_index_find":{"type":"function","file":"index.h","line":172,"lineto":172,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"},{"name":"path","type":"const char *","comment":"path to search"}],"argline":"git_index *index, const char *path","sig":"git_index *::const char *","return":{"type":"int","comment":" an index >= 0 if found, -1 otherwise"},"description":"

Find the first index of any entries which point to given\n path in the Git index.

\n","comments":"","group":"index"},"git_index_add":{"type":"function","file":"index.h","line":187,"lineto":187,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"},{"name":"path","type":"const char *","comment":"filename to add"},{"name":"stage","type":"int","comment":"stage for the entry"}],"argline":"git_index *index, const char *path, int stage","sig":"git_index *::const char *::int","return":{"type":"int","comment":" 0 on success, otherwise an error code"},"description":"

Add or update an index entry from a file in disk

\n","comments":"

The file path must be relative to the repository's\n working folder and must be readable.

\n\n

This method will fail in bare index instances.

\n","group":"index"},"git_index_add2":{"type":"function","file":"index.h","line":199,"lineto":199,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"},{"name":"source_entry","type":"const git_index_entry *","comment":"new entry object"}],"argline":"git_index *index, const git_index_entry *source_entry","sig":"git_index *::const git_index_entry *","return":{"type":"int","comment":" 0 on success, otherwise an error code"},"description":"

Add or update an index entry from an in-memory struct

\n","comments":"

A full copy (including the 'path' string) of the given\n 'source_entry' will be inserted on the index.

\n","group":"index"},"git_index_append":{"type":"function","file":"index.h","line":218,"lineto":218,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"},{"name":"path","type":"const char *","comment":"filename to add"},{"name":"stage","type":"int","comment":"stage for the entry"}],"argline":"git_index *index, const char *path, int stage","sig":"git_index *::const char *::int","return":{"type":"int","comment":" 0 on success, otherwise an error code"},"description":"

Add (append) an index entry from a file in disk

\n","comments":"

A new entry will always be inserted into the index;\n if the index already contains an entry for such\n path, the old entry will not be replaced.

\n\n

The file path must be relative to the repository's\n working folder and must be readable.

\n\n

This method will fail in bare index instances.

\n","group":"index"},"git_index_append2":{"type":"function","file":"index.h","line":235,"lineto":235,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"},{"name":"source_entry","type":"const git_index_entry *","comment":"new entry object"}],"argline":"git_index *index, const git_index_entry *source_entry","sig":"git_index *::const git_index_entry *","return":{"type":"int","comment":" 0 on success, otherwise an error code"},"description":"

Add (append) an index entry from an in-memory struct

\n","comments":"

A new entry will always be inserted into the index;\n if the index already contains an entry for the path\n in the entry struct, the old entry will not be\n replaced.

\n\n

A full copy (including the 'path' string) of the given\n 'source_entry' will be inserted on the index.

\n","group":"index"},"git_index_remove":{"type":"function","file":"index.h","line":244,"lineto":244,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"},{"name":"position","type":"int","comment":"position of the entry to remove"}],"argline":"git_index *index, int position","sig":"git_index *::int","return":{"type":"int","comment":" 0 on success, otherwise an error code"},"description":"

Remove an entry from the index

\n","comments":"","group":"index"},"git_index_get":{"type":"function","file":"index.h","line":257,"lineto":257,"args":[{"name":"git_index_entry","type":"git_index_entry","comment":null},{"name":"index","type":"git_index *","comment":"an existing index object"},{"name":"n","type":"int","comment":"the position of the entry"}],"argline":"git_index_entry git_index_entry, git_index *index, int n","sig":"git_index_entry::git_index *::int","return":{"type":"git_index_entry *","comment":" a pointer to the entry; NULL if out of bounds"},"description":"

Get a pointer to one of the entries in the index

\n","comments":"

This entry can be modified, and the changes will be written\n back to disk on the next write() call.

\n","group":"index"},"git_index_entrycount":{"type":"function","file":"index.h","line":265,"lineto":265,"args":[{"name":"index","type":"git_index *","comment":"an existing index object"}],"argline":"git_index *index","sig":"git_index *","return":{"type":"unsigned int","comment":" integer of count of current entries"},"description":"

Get the count of entries currently in the index

\n","comments":"","group":"index"},"git_object_lookup":{"type":"function","file":"object.h","line":59,"lineto":59,"args":[{"name":"object","type":"git_object **","comment":"pointer to the looked-up object"},{"name":"repo","type":"git_repository *","comment":"the repository to look up the object"},{"name":"id","type":"const git_oid *","comment":"the unique identifier for the object"},{"name":"type","type":"git_otype","comment":"the type of the object"}],"argline":"git_object **object, git_repository *repo, const git_oid *id, git_otype type","sig":"git_object **::git_repository *::const git_oid *::git_otype","return":{"type":"int","comment":" a reference to the object"},"description":"

Lookup a reference to one of the objects in a repostory.

\n","comments":"

The generated reference is owned by the repository and\n should be closed with the git_object_close method\n instead of free'd manually.

\n\n

The 'type' parameter must match the type of the object\n in the odb; the method will fail otherwise.\n The special value 'GIT_OBJ_ANY' may be passed to let\n the method guess the object's type.

\n","group":"object"},"git_object_id":{"type":"function","file":"object.h","line":67,"lineto":67,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"obj","type":"const git_object *","comment":"the repository object"}],"argline":"git_oid git_oid, const git_object *obj","sig":"git_oid::const git_object *","return":{"type":"const git_oid *","comment":" the SHA1 id"},"description":"

Get the id (SHA1) of a repository object

\n","comments":"","group":"object"},"git_object_type":{"type":"function","file":"object.h","line":75,"lineto":75,"args":[{"name":"git_otype","type":"git_otype","comment":null},{"name":"obj","type":"const git_object *","comment":"the repository object"}],"argline":"git_otype git_otype, const git_object *obj","sig":"git_otype::const git_object *","return":{"type":"git_otype","comment":" the object's type"},"description":"

Get the object type of an object

\n","comments":"","group":"object"},"git_object_owner":{"type":"function","file":"object.h","line":83,"lineto":83,"args":[{"name":"git_repository","type":"git_repository","comment":null},{"name":"obj","type":"const git_object *","comment":"the object"}],"argline":"git_repository git_repository, const git_object *obj","sig":"git_repository::const git_object *","return":{"type":"git_repository *","comment":" the repository who owns this object"},"description":"

Get the repository that owns this object

\n","comments":"","group":"object"},"git_object_close":{"type":"function","file":"object.h","line":100,"lineto":100,"args":[{"name":"object","type":"git_object *","comment":"the object to close"}],"argline":"git_object *object","sig":"git_object *","return":{"type":"void","comment":null},"description":"

Close an open object

\n","comments":"

This method instructs the library to close an existing\n object; note that git_objects are owned and cached by the repository\n so the object may or may not be freed after this library call,\n depending on how agressive is the caching mechanism used\n by the repository.

\n\n

IMPORTANT:\n It is necessary to call this method when you stop using\n an object. Failure to do so will cause a memory leak.

\n","group":"object"},"git_object_type2string":{"type":"function","file":"object.h","line":111,"lineto":111,"args":[{"name":"type","type":"git_otype","comment":"object type to convert."}],"argline":"git_otype type","sig":"git_otype","return":{"type":"const char *","comment":" the corresponding string representation."},"description":"

Convert an object type to it's string representation.

\n","comments":"

The result is a pointer to a string in static memory and\n should not be free()'ed.

\n","group":"object"},"git_object_string2type":{"type":"function","file":"object.h","line":119,"lineto":119,"args":[{"name":"git_otype","type":"git_otype","comment":null},{"name":"str","type":"const char *","comment":"the string to convert."}],"argline":"git_otype git_otype, const char *str","sig":"git_otype::const char *","return":{"type":"git_otype","comment":" the corresponding git_otype."},"description":"

Convert a string object type representation to it's git_otype.

\n","comments":"","group":"object"},"git_object_typeisloose":{"type":"function","file":"object.h","line":128,"lineto":128,"args":[{"name":"type","type":"git_otype","comment":"object type to test."}],"argline":"git_otype type","sig":"git_otype","return":{"type":"int","comment":" true if the type represents a valid loose object type,\n false otherwise."},"description":"

Determine if the given git_otype is a valid loose object type.

\n","comments":"","group":"object"},"git_object__size":{"type":"function","file":"object.h","line":142,"lineto":142,"args":[{"name":"size_t","type":"size_t","comment":null},{"name":"type","type":"git_otype","comment":"object type to get its size"}],"argline":"size_t size_t, git_otype type","sig":"size_t::git_otype","return":{"type":"size_t","comment":" size in bytes of the object"},"description":"

Get the size in bytes for the structure which\n acts as an in-memory representation of any given\n object type.

\n","comments":"

For all the core types, this would the equivalent\n of calling sizeof(git_commit) if the core types\n were not opaque on the external API.

\n","group":"object"},"git_odb_new":{"type":"function","file":"odb.h","line":53,"lineto":53,"args":[{"name":"out","type":"git_odb **","comment":"location to store the database pointer, if opened.\n Set to NULL if the open failed."}],"argline":"git_odb **out","sig":"git_odb **","return":{"type":"int","comment":" GIT_SUCCESS if the database was created; otherwise an error\n code describing why the open was not possible."},"description":"

Create a new object database with no backends.

\n","comments":"

Before the ODB can be used for read/writing, a custom database\n backend must be manually added using git_odb_add_backend()

\n","group":"odb"},"git_odb_open":{"type":"function","file":"odb.h","line":72,"lineto":72,"args":[{"name":"out","type":"git_odb **","comment":"location to store the database pointer, if opened.\n Set to NULL if the open failed."},{"name":"objects_dir","type":"const char *","comment":"path of the backends' \"objects\" directory."}],"argline":"git_odb **out, const char *objects_dir","sig":"git_odb **::const char *","return":{"type":"int","comment":" GIT_SUCCESS if the database opened; otherwise an error\n code describing why the open was not possible."},"description":"

Create a new object database and automatically add\n the two default backends:

\n","comments":"
- git_odb_backend_loose: read and write loose object files\n    from disk, assuming `objects_dir` as the Objects folder\n\n- git_odb_backend_pack: read objects from packfiles,\n    assuming `objects_dir` as the Objects folder which\n    contains a 'pack/' folder with the corresponding data\n
\n","group":"odb"},"git_odb_add_backend":{"type":"function","file":"odb.h","line":83,"lineto":83,"args":[{"name":"odb","type":"git_odb *","comment":"database to add the backend to"},{"name":"backend","type":"git_odb_backend *","comment":"pointer to a git_odb_backend instance"},{"name":"priority","type":"int","comment":null}],"argline":"git_odb *odb, git_odb_backend *backend, int priority","sig":"git_odb *::git_odb_backend *::int","return":{"type":"int","comment":" 0 on sucess; error code otherwise"},"description":"

Add a custom backend to an existing Object DB

\n","comments":"

Read \n for more information.

\n","group":"odb"},"git_odb_add_alternate":{"type":"function","file":"odb.h","line":100,"lineto":100,"args":[{"name":"odb","type":"git_odb *","comment":"database to add the backend to"},{"name":"backend","type":"git_odb_backend *","comment":"pointer to a git_odb_backend instance"},{"name":"priority","type":"int","comment":null}],"argline":"git_odb *odb, git_odb_backend *backend, int priority","sig":"git_odb *::git_odb_backend *::int","return":{"type":"int","comment":" 0 on sucess; error code otherwise"},"description":"

Add a custom backend to an existing Object DB; this\n backend will work as an alternate.

\n","comments":"

Alternate backends are always checked for objects after\n all the main backends have been exhausted.

\n\n

Writing is disabled on alternate backends.

\n\n

Read \n for more information.

\n","group":"odb"},"git_odb_close":{"type":"function","file":"odb.h","line":107,"lineto":107,"args":[{"name":"db","type":"git_odb *","comment":"database pointer to close. If NULL no action is taken."}],"argline":"git_odb *db","sig":"git_odb *","return":{"type":"void","comment":null},"description":"

Close an open object database.

\n","comments":"","group":"odb"},"git_odb_read":{"type":"function","file":"odb.h","line":126,"lineto":126,"args":[{"name":"out","type":"git_odb_object **","comment":"pointer where to store the read object"},{"name":"db","type":"git_odb *","comment":"database to search for the object in."},{"name":"id","type":"const git_oid *","comment":"identity of the object to read."}],"argline":"git_odb_object **out, git_odb *db, const git_oid *id","sig":"git_odb_object **::git_odb *::const git_oid *","return":{"type":"int","comment":" - GIT_SUCCESS if the object was read;\n - GIT_ENOTFOUND if the object is not in the database."},"description":"

Read an object from the database.

\n","comments":"

This method queries all avaiable ODB backends\n trying to read the given OID.

\n\n

The returned object is reference counted and\n internally cached, so it should be closed\n by the user once it's no longer in use.

\n","group":"odb"},"git_odb_read_header":{"type":"function","file":"odb.h","line":146,"lineto":146,"args":[{"name":"len_p","type":"size_t *","comment":"pointer where to store the length"},{"name":"type_p","type":"git_otype *","comment":"pointer where to store the type"},{"name":"db","type":"git_odb *","comment":"database to search for the object in."},{"name":"id","type":"const git_oid *","comment":"identity of the object to read."}],"argline":"size_t *len_p, git_otype *type_p, git_odb *db, const git_oid *id","sig":"size_t *::git_otype *::git_odb *::const git_oid *","return":{"type":"int","comment":" - GIT_SUCCESS if the object was read;\n - GIT_ENOTFOUND if the object is not in the database."},"description":"

Read the header of an object from the database, without\n reading its full contents.

\n","comments":"

The header includes the length and the type of an object.

\n\n

Note that most backends do not support reading only the header\n of an object, so the whole object will be read and then the\n header will be returned.

\n","group":"odb"},"git_odb_exists":{"type":"function","file":"odb.h","line":157,"lineto":157,"args":[{"name":"db","type":"git_odb *","comment":"database to be searched for the given object."},{"name":"id","type":"const git_oid *","comment":"the object to search for."}],"argline":"git_odb *db, const git_oid *id","sig":"git_odb *::const git_oid *","return":{"type":"int","comment":" - 1, if the object was found\n - 0, otherwise"},"description":"

Determine if the given object can be found in the object database.

\n","comments":"","group":"odb"},"git_odb_write":{"type":"function","file":"odb.h","line":177,"lineto":177,"args":[{"name":"oid","type":"git_oid *","comment":"pointer to store the OID result of the write"},{"name":"odb","type":"git_odb *","comment":"object database where to store the object"},{"name":"data","type":"const void *","comment":"buffer with the data to storr"},{"name":"len","type":"size_t","comment":"size of the buffer"},{"name":"type","type":"git_otype","comment":"type of the data to store"}],"argline":"git_oid *oid, git_odb *odb, const void *data, size_t len, git_otype type","sig":"git_oid *::git_odb *::const void *::size_t::git_otype","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Write an object directly into the ODB

\n","comments":"

This method writes a full object straight into the ODB.\n For most cases, it is preferred to write objects through a write\n stream, which is both faster and less memory intensive, specially\n for big objects.

\n\n

This method is provided for compatibility with custom backends\n which are not able to support streaming writes

\n","group":"odb"},"git_odb_open_wstream":{"type":"function","file":"odb.h","line":206,"lineto":206,"args":[{"name":"stream","type":"git_odb_stream **","comment":"pointer where to store the stream"},{"name":"db","type":"git_odb *","comment":"object database where the stream will write"},{"name":"size","type":"size_t","comment":"final size of the object that will be written"},{"name":"type","type":"git_otype","comment":"type of the object that will be written"}],"argline":"git_odb_stream **stream, git_odb *db, size_t size, git_otype type","sig":"git_odb_stream **::git_odb *::size_t::git_otype","return":{"type":"int","comment":" 0 if the stream was created; error code otherwise"},"description":"

Open a stream to write an object into the ODB

\n","comments":"

The type and final length of the object must be specified\n when opening the stream.

\n\n

The returned stream will be of type GIT_STREAM_WRONLY and\n will have the following methods:

\n\n
    - stream->write: write `n` bytes into the stream\n    - stream->finalize_write: close the stream and store the object in\n        the odb\n    - stream->free: free the stream\n
\n\n

The streaming write won't be effective until stream->finalize_write\n is called and returns without an error

\n\n

The stream must always be free'd or will leak memory.

\n","group":"odb"},"git_odb_open_rstream":{"type":"function","file":"odb.h","line":232,"lineto":232,"args":[{"name":"stream","type":"git_odb_stream **","comment":"pointer where to store the stream"},{"name":"db","type":"git_odb *","comment":"object database where the stream will read from"},{"name":"oid","type":"const git_oid *","comment":"oid of the object the stream will read from"}],"argline":"git_odb_stream **stream, git_odb *db, const git_oid *oid","sig":"git_odb_stream **::git_odb *::const git_oid *","return":{"type":"int","comment":" 0 if the stream was created; error code otherwise"},"description":"

Open a stream to read an object from the ODB

\n","comments":"

Note that most backends do not support streaming reads\n because they store their objects as compressed/delta'ed blobs.

\n\n

It's recommended to use git_odb_read instead, which is\n assured to work on all backends.

\n\n

The returned stream will be of type GIT_STREAM_RDONLY and\n will have the following methods:

\n\n
    - stream->read: read `n` bytes from the stream\n    - stream->free: free the stream\n
\n\n

The stream must always be free'd or will leak memory.

\n","group":"odb"},"git_odb_hash":{"type":"function","file":"odb.h","line":246,"lineto":246,"args":[{"name":"id","type":"git_oid *","comment":"the resulting object-ID."},{"name":"data","type":"const void *","comment":"data to hash"},{"name":"len","type":"size_t","comment":"size of the data"},{"name":"type","type":"git_otype","comment":"of the data to hash"}],"argline":"git_oid *id, const void *data, size_t len, git_otype type","sig":"git_oid *::const void *::size_t::git_otype","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Determine the object-ID (sha1 hash) of a data buffer

\n","comments":"

The resulting SHA-1 OID will the itentifier for the data\n buffer as if the data buffer it were to written to the ODB.

\n","group":"odb"},"git_odb_object_close":{"type":"function","file":"odb.h","line":256,"lineto":256,"args":[{"name":"object","type":"git_odb_object *","comment":"object to close"}],"argline":"git_odb_object *object","sig":"git_odb_object *","return":{"type":"void","comment":null},"description":"

Close an ODB object

\n","comments":"

This method must always be called once a git_odb_object is no\n longer needed, otherwise memory will leak.

\n","group":"odb"},"git_odb_object_id":{"type":"function","file":"odb.h","line":266,"lineto":266,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"object","type":"git_odb_object *","comment":"the object"}],"argline":"git_oid git_oid, git_odb_object *object","sig":"git_oid::git_odb_object *","return":{"type":"const git_oid *","comment":" a pointer to the OID"},"description":"

Return the OID of an ODB object

\n","comments":"

This is the OID from which the object was read from

\n","group":"odb"},"git_odb_object_data":{"type":"function","file":"odb.h","line":279,"lineto":279,"args":[{"name":"object","type":"git_odb_object *","comment":"the object"}],"argline":"git_odb_object *object","sig":"git_odb_object *","return":{"type":"const void *","comment":" a pointer to the data"},"description":"

Return the data of an ODB object

\n","comments":"

This is the uncompressed, raw data as read from the ODB,\n without the leading header.

\n\n

This pointer is owned by the object and shall not be free'd.

\n","group":"odb"},"git_odb_object_size":{"type":"function","file":"odb.h","line":290,"lineto":290,"args":[{"name":"size_t","type":"size_t","comment":null},{"name":"object","type":"git_odb_object *","comment":"the object"}],"argline":"size_t size_t, git_odb_object *object","sig":"size_t::git_odb_object *","return":{"type":"size_t","comment":" the size"},"description":"

Return the size of an ODB object

\n","comments":"

This is the real size of the data buffer, not the\n actual size of the object.

\n","group":"odb"},"git_odb_object_type":{"type":"function","file":"odb.h","line":298,"lineto":298,"args":[{"name":"git_otype","type":"git_otype","comment":null},{"name":"object","type":"git_odb_object *","comment":"the object"}],"argline":"git_otype git_otype, git_odb_object *object","sig":"git_otype::git_odb_object *","return":{"type":"git_otype","comment":" the type"},"description":"

Return the type of an ODB object

\n","comments":"","group":"odb"},"git_oid_mkstr":{"type":"function","file":"oid.h","line":60,"lineto":60,"args":[{"name":"out","type":"git_oid *","comment":"oid structure the result is written into."},{"name":"str","type":"const char *","comment":"input hex string; must be pointing at the start of\n the hex sequence and have at least the number of bytes\n needed for an oid encoded in hex (40 bytes)."}],"argline":"git_oid *out, const char *str","sig":"git_oid *::const char *","return":{"type":"int","comment":" GIT_SUCCESS if valid; GIT_ENOTOID on failure."},"description":"

Parse a hex formatted object id into a git_oid.

\n","comments":"","group":"oid"},"git_oid_mkraw":{"type":"function","file":"oid.h","line":67,"lineto":67,"args":[{"name":"out","type":"git_oid *","comment":"oid structure the result is written into."},{"name":"raw","type":"const unsigned char *","comment":"the raw input bytes to be copied."}],"argline":"git_oid *out, const unsigned char *raw","sig":"git_oid *::const unsigned char *","return":{"type":"void","comment":null},"description":"

Copy an already raw oid into a git_oid structure.

\n","comments":"","group":"oid"},"git_oid_fmt":{"type":"function","file":"oid.h","line":78,"lineto":78,"args":[{"name":"str","type":"char *","comment":"output hex string; must be pointing at the start of\n the hex sequence and have at least the number of bytes\n needed for an oid encoded in hex (40 bytes). Only the\n oid digits are written; a '\n\\\n0' terminator must be added\n by the caller if it is required."},{"name":"oid","type":"const git_oid *","comment":"oid structure to format."}],"argline":"char *str, const git_oid *oid","sig":"char *::const git_oid *","return":{"type":"void","comment":null},"description":"

Format a git_oid into a hex string.

\n","comments":"","group":"oid"},"git_oid_pathfmt":{"type":"function","file":"oid.h","line":93,"lineto":93,"args":[{"name":"str","type":"char *","comment":"output hex string; must be pointing at the start of\n the hex sequence and have at least the number of bytes\n needed for an oid encoded in hex (41 bytes). Only the\n oid digits are written; a '\n\\\n0' terminator must be added\n by the caller if it is required."},{"name":"oid","type":"const git_oid *","comment":"oid structure to format."}],"argline":"char *str, const git_oid *oid","sig":"char *::const git_oid *","return":{"type":"void","comment":null},"description":"

Format a git_oid into a loose-object path string.

\n\n

\n The resulting string is "aa/...", where "aa" is the first two\n hex digitis of the oid and "..." is the remaining 38 digits.

\n","comments":"","group":"oid"},"git_oid_allocfmt":{"type":"function","file":"oid.h","line":101,"lineto":101,"args":[{"name":"oid","type":"const git_oid *","comment":"the oid structure to format"}],"argline":"const git_oid *oid","sig":"const git_oid *","return":{"type":"char *","comment":" the c-string; NULL if memory is exhausted. Caller must\n deallocate the string with free()."},"description":"

Format a gid_oid into a newly allocated c-string.

\n","comments":"","group":"oid"},"git_oid_to_string":{"type":"function","file":"oid.h","line":118,"lineto":118,"args":[{"name":"out","type":"char *","comment":"the buffer into which the oid string is output."},{"name":"n","type":"size_t","comment":"the size of the out buffer."},{"name":"oid","type":"const git_oid *","comment":"the oid structure to format."}],"argline":"char *out, size_t n, const git_oid *oid","sig":"char *::size_t::const git_oid *","return":{"type":"char *","comment":" the out buffer pointer, assuming no input parameter\n errors, otherwise a pointer to an empty string."},"description":"

Format a git_oid into a buffer as a hex format c-string.

\n\n

\n If the buffer is smaller than GIT_OID_HEXSZ+1, then the resulting\n oid c-string will be truncated to n-1 characters. If there are\n any input parameter errors (out == NULL, n == 0, oid == NULL),\n then a pointer to an empty string is returned, so that the return\n value can always be printed.

\n","comments":"","group":"oid"},"git_oid_cpy":{"type":"function","file":"oid.h","line":125,"lineto":125,"args":[{"name":"out","type":"git_oid *","comment":"oid structure the result is written into."},{"name":"src","type":"const git_oid *","comment":"oid structure to copy from."}],"argline":"git_oid *out, const git_oid *src","sig":"git_oid *::const git_oid *","return":{"type":"void","comment":null},"description":"

Copy an oid from one structure to another.

\n","comments":"","group":"oid"},"git_oid_cmp":{"type":"function","file":"oid.h","line":133,"lineto":133,"args":[{"name":"a","type":"const git_oid *","comment":"first oid structure."},{"name":"b","type":"const git_oid *","comment":"second oid structure."}],"argline":"const git_oid *a, const git_oid *b","sig":"const git_oid *::const git_oid *","return":{"type":"int","comment":" \n<\n0, 0, >0 if a \n<\n b, a == b, a > b."},"description":"

Compare two oid structures.

\n","comments":"","group":"oid"},"git_oid_shorten_new":{"type":"function","file":"oid.h","line":154,"lineto":154,"args":[{"name":"git_oid_shorten","type":"git_oid_shorten","comment":null},{"name":"min_length","type":"size_t","comment":"The minimal length for all identifiers,\n\t\twhich will be used even if shorter OIDs would still\n\t\tbe unique."}],"argline":"git_oid_shorten git_oid_shorten, size_t min_length","sig":"git_oid_shorten::size_t","return":{"type":"git_oid_shorten *","comment":" a `git_oid_shorten` instance, NULL if OOM"},"description":"

Create a new OID shortener.

\n","comments":"

The OID shortener is used to process a list of OIDs\n in text form and return the shortest length that would\n uniquely identify all of them.

\n\n

E.g. look at the result of git log --abbrev.

\n","group":"oid"},"git_oid_shorten_add":{"type":"function","file":"oid.h","line":180,"lineto":180,"args":[{"name":"os","type":"git_oid_shorten *","comment":"a `git_oid_shorten` instance"},{"name":"text_oid","type":"const char *","comment":"an OID in text form"}],"argline":"git_oid_shorten *os, const char *text_oid","sig":"git_oid_shorten *::const char *","return":{"type":"int","comment":" the minimal length to uniquely identify all OIDs\n\t\tadded so far to the set; or an error code (\n<\n0) if an\n\t\terror occurs."},"description":"

Add a new OID to set of shortened OIDs and calculate\n the minimal length to uniquely identify all the OIDs in\n the set.

\n","comments":"

The OID is expected to be a 40-char hexadecimal string.\n The OID is owned by the user and will not be modified\n or freed.

\n\n

For performance reasons, there is a hard-limit of how many\n OIDs can be added to a single set (around ~22000, assuming\n a mostly randomized distribution), which should be enough\n for any kind of program, and keeps the algorithm fast and\n memory-efficient.

\n\n

Attempting to add more than those OIDs will result in a\n GIT_ENOMEM error

\n","group":"oid"},"git_oid_shorten_free":{"type":"function","file":"oid.h","line":187,"lineto":187,"args":[{"name":"os","type":"git_oid_shorten *","comment":"a `git_oid_shorten` instance"}],"argline":"git_oid_shorten *os","sig":"git_oid_shorten *","return":{"type":"void","comment":null},"description":"

Free an OID shortener instance

\n","comments":"","group":"oid"},"git_reference_lookup":{"type":"function","file":"refs.h","line":52,"lineto":52,"args":[{"name":"reference_out","type":"git_reference **","comment":"pointer to the looked-up reference"},{"name":"repo","type":"git_repository *","comment":"the repository to look up the reference"},{"name":"name","type":"const char *","comment":"the long name for the reference (e.g. HEAD, ref/heads/master, refs/tags/v0.1.0, ...)"}],"argline":"git_reference **reference_out, git_repository *repo, const char *name","sig":"git_reference **::git_repository *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Lookup a reference by its name in a repository.

\n","comments":"

The generated reference is owned by the repository and\n should not be freed by the user.

\n","group":"reference"},"git_reference_create_symbolic":{"type":"function","file":"refs.h","line":69,"lineto":69,"args":[{"name":"ref_out","type":"git_reference **","comment":"Pointer to the newly created reference"},{"name":"repo","type":"git_repository *","comment":"Repository where that reference will live"},{"name":"name","type":"const char *","comment":"The name of the reference"},{"name":"target","type":"const char *","comment":"The target of the reference"}],"argline":"git_reference **ref_out, git_repository *repo, const char *name, const char *target","sig":"git_reference **::git_repository *::const char *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Create a new symbolic reference.

\n","comments":"

The reference will be created in the repository and written\n to the disk.

\n\n

This reference is owned by the repository and shall not\n be free'd by the user.

\n","group":"reference"},"git_reference_create_symbolic_f":{"type":"function","file":"refs.h","line":90,"lineto":90,"args":[{"name":"ref_out","type":"git_reference **","comment":"Pointer to the newly created reference"},{"name":"repo","type":"git_repository *","comment":"Repository where that reference will live"},{"name":"name","type":"const char *","comment":"The name of the reference"},{"name":"target","type":"const char *","comment":"The target of the reference"}],"argline":"git_reference **ref_out, git_repository *repo, const char *name, const char *target","sig":"git_reference **::git_repository *::const char *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Create a new symbolic reference, overwriting an existing one with\n the same name, if it exists.

\n","comments":"

If the new reference isn't a symbolic one, any pointers to the old\n reference become invalid.

\n\n

The reference will be created in the repository and written\n to the disk.

\n\n

This reference is owned by the repository and shall not\n be free'd by the user.

\n","group":"reference"},"git_reference_create_oid":{"type":"function","file":"refs.h","line":107,"lineto":107,"args":[{"name":"ref_out","type":"git_reference **","comment":"Pointer to the newly created reference"},{"name":"repo","type":"git_repository *","comment":"Repository where that reference will live"},{"name":"name","type":"const char *","comment":"The name of the reference"},{"name":"id","type":"const git_oid *","comment":"The object id pointed to by the reference."}],"argline":"git_reference **ref_out, git_repository *repo, const char *name, const git_oid *id","sig":"git_reference **::git_repository *::const char *::const git_oid *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Create a new object id reference.

\n","comments":"

The reference will be created in the repository and written\n to the disk.

\n\n

This reference is owned by the repository and shall not\n be free'd by the user.

\n","group":"reference"},"git_reference_create_oid_f":{"type":"function","file":"refs.h","line":128,"lineto":128,"args":[{"name":"ref_out","type":"git_reference **","comment":"Pointer to the newly created reference"},{"name":"repo","type":"git_repository *","comment":"Repository where that reference will live"},{"name":"name","type":"const char *","comment":"The name of the reference"},{"name":"id","type":"const git_oid *","comment":"The object id pointed to by the reference."}],"argline":"git_reference **ref_out, git_repository *repo, const char *name, const git_oid *id","sig":"git_reference **::git_repository *::const char *::const git_oid *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Create a new object id reference, overwriting an existing one with\n the same name, if it exists.

\n","comments":"

If the new reference isn't an object id one, any pointers to the\n old reference become invalid.

\n\n

The reference will be created in the repository and written\n to the disk.

\n\n

This reference is owned by the repository and shall not\n be free'd by the user.

\n","group":"reference"},"git_reference_oid":{"type":"function","file":"refs.h","line":138,"lineto":138,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"ref","type":"git_reference *","comment":"The reference"}],"argline":"git_oid git_oid, git_reference *ref","sig":"git_oid::git_reference *","return":{"type":"const git_oid *","comment":" a pointer to the oid if available, NULL otherwise"},"description":"

Get the OID pointed to by a reference.

\n","comments":"

Only available if the reference is direct (i.e. not symbolic)

\n","group":"reference"},"git_reference_target":{"type":"function","file":"refs.h","line":148,"lineto":148,"args":[{"name":"ref","type":"git_reference *","comment":"The reference"}],"argline":"git_reference *ref","sig":"git_reference *","return":{"type":"const char *","comment":" a pointer to the name if available, NULL otherwise"},"description":"

Get full name to the reference pointed by this reference

\n","comments":"

Only available if the reference is symbolic

\n","group":"reference"},"git_reference_type":{"type":"function","file":"refs.h","line":158,"lineto":158,"args":[{"name":"git_rtype","type":"git_rtype","comment":null},{"name":"ref","type":"git_reference *","comment":"The reference"}],"argline":"git_rtype git_rtype, git_reference *ref","sig":"git_rtype::git_reference *","return":{"type":"git_rtype","comment":" the type"},"description":"

Get the type of a reference

\n","comments":"

Either direct (GIT_REF_OID) or symbolic (GIT_REF_SYMBOLIC)

\n","group":"reference"},"git_reference_name":{"type":"function","file":"refs.h","line":166,"lineto":166,"args":[{"name":"ref","type":"git_reference *","comment":"The reference"}],"argline":"git_reference *ref","sig":"git_reference *","return":{"type":"const char *","comment":" the full name for the ref"},"description":"

Get the full name of a reference

\n","comments":"","group":"reference"},"git_reference_resolve":{"type":"function","file":"refs.h","line":181,"lineto":181,"args":[{"name":"resolved_ref","type":"git_reference **","comment":"Pointer to the peeled reference"},{"name":"ref","type":"git_reference *","comment":"The reference"}],"argline":"git_reference **resolved_ref, git_reference *ref","sig":"git_reference **::git_reference *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Resolve a symbolic reference

\n","comments":"

Thie method iteratively peels a symbolic reference\n until it resolves to a direct reference to an OID.

\n\n

If a direct reference is passed as an argument,\n that reference is returned immediately

\n","group":"reference"},"git_reference_owner":{"type":"function","file":"refs.h","line":189,"lineto":189,"args":[{"name":"git_repository","type":"git_repository","comment":null},{"name":"ref","type":"git_reference *","comment":"The reference"}],"argline":"git_repository git_repository, git_reference *ref","sig":"git_repository::git_reference *","return":{"type":"git_repository *","comment":" a pointer to the repo"},"description":"

Get the repository where a reference resides

\n","comments":"","group":"reference"},"git_reference_set_target":{"type":"function","file":"refs.h","line":204,"lineto":204,"args":[{"name":"ref","type":"git_reference *","comment":"The reference"},{"name":"target","type":"const char *","comment":"The new target for the reference"}],"argline":"git_reference *ref, const char *target","sig":"git_reference *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Set the symbolic target of a reference.

\n","comments":"

The reference must be a symbolic reference, otherwise\n this method will fail.

\n\n

The reference will be automatically updated in\n memory and on disk.

\n","group":"reference"},"git_reference_set_oid":{"type":"function","file":"refs.h","line":219,"lineto":219,"args":[{"name":"ref","type":"git_reference *","comment":"The reference"},{"name":"id","type":"const git_oid *","comment":null}],"argline":"git_reference *ref, const git_oid *id","sig":"git_reference *::const git_oid *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Set the OID target of a reference.

\n","comments":"

The reference must be a direct reference, otherwise\n this method will fail.

\n\n

The reference will be automatically updated in\n memory and on disk.

\n","group":"reference"},"git_reference_rename":{"type":"function","file":"refs.h","line":232,"lineto":232,"args":[{"name":"ref","type":"git_reference *","comment":null},{"name":"new_name","type":"const char *","comment":null}],"argline":"git_reference *ref, const char *new_name","sig":"git_reference *::const char *","return":{"type":"int","comment":null},"description":"

Rename an existing reference

\n","comments":"

This method works for both direct and symbolic references.\n The new name will be checked for validity and may be\n modified into a normalized form.

\n\n

The refernece will be immediately renamed in-memory\n and on disk.

\n","group":"reference"},"git_reference_rename_f":{"type":"function","file":"refs.h","line":246,"lineto":246,"args":[{"name":"ref","type":"git_reference *","comment":null},{"name":"new_name","type":"const char *","comment":null}],"argline":"git_reference *ref, const char *new_name","sig":"git_reference *::const char *","return":{"type":"int","comment":null},"description":"

Rename an existing reference, overwriting an existing one with the\n same name, if it exists.

\n","comments":"

This method works for both direct and symbolic references.\n The new name will be checked for validity and may be\n modified into a normalized form.

\n\n

The refernece will be immediately renamed in-memory\n and on disk.

\n","group":"reference"},"git_reference_delete":{"type":"function","file":"refs.h","line":257,"lineto":257,"args":[{"name":"ref","type":"git_reference *","comment":null}],"argline":"git_reference *ref","sig":"git_reference *","return":{"type":"int","comment":null},"description":"

Delete an existing reference

\n","comments":"

This method works for both direct and symbolic references.

\n\n

The reference will be immediately removed on disk and from\n memory. The given reference pointer will no longer be valid.

\n","group":"reference"},"git_reference_packall":{"type":"function","file":"refs.h","line":275,"lineto":275,"args":[{"name":"repo","type":"git_repository *","comment":"Repository where the loose refs will be packed"}],"argline":"git_repository *repo","sig":"git_repository *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Pack all the loose references in the repository

\n","comments":"

This method will load into the cache all the loose\n references on the repository and update the \n packed-refs file with them.

\n\n

Once the packed-refs file has been written properly,\n the loose references will be removed from disk.

\n\n

WARNING: calling this method may invalidate any existing\n references previously loaded on the cache.

\n","group":"reference"},"git_reference_listall":{"type":"function","file":"refs.h","line":298,"lineto":298,"args":[{"name":"array","type":"git_strarray *","comment":"Pointer to a git_strarray structure where\n\t\tthe reference names will be stored"},{"name":"repo","type":"git_repository *","comment":"Repository where to find the refs"},{"name":"list_flags","type":"unsigned int","comment":"Filtering flags for the reference\n\t\tlisting."}],"argline":"git_strarray *array, git_repository *repo, unsigned int list_flags","sig":"git_strarray *::git_repository *::unsigned int","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Fill a list with all the references that can be found\n in a repository.

\n","comments":"

The listed references may be filtered by type, or using\n a bitwise OR of several types. Use the magic value\n GIT_REF_LISTALL to obtain all references, including\n packed ones.

\n\n

The string array will be filled with the names of all\n references; these values are owned by the user and\n should be free'd manually when no longer needed, using\n git_strarray_free.

\n","group":"reference"},"git_reference_listcb":{"type":"function","file":"refs.h","line":321,"lineto":321,"args":[{"name":"repo","type":"git_repository *","comment":"Repository where to find the refs"},{"name":"list_flags","type":"unsigned int","comment":"Filtering flags for the reference\n\t\tlisting."},{"name":"callback","type":"int (*)(const char *, void *)","comment":"Function which will be called for every listed ref"},{"name":"payload","type":"void *","comment":"Additional data to pass to the callback"}],"argline":"git_repository *repo, unsigned int list_flags, int (*)(const char *, void *) callback, void *payload","sig":"git_repository *::unsigned int::int (*)(const char *, void *)::void *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

List all the references in the repository, calling a custom\n callback for each one.

\n","comments":"

The listed references may be filtered by type, or using\n a bitwise OR of several types. Use the magic value\n GIT_REF_LISTALL to obtain all references, including\n packed ones.

\n\n

The callback function will be called for each of the references\n in the repository, and will receive the name of the reference and\n the payload value passed to this method.

\n","group":"reference"},"git_repository_open":{"type":"function","file":"repository.h","line":64,"lineto":64,"args":[{"name":"repository","type":"git_repository **","comment":"pointer to the repo which will be opened"},{"name":"path","type":"const char *","comment":"the path to the repository"}],"argline":"git_repository **repository, const char *path","sig":"git_repository **::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Open a git repository.

\n","comments":"

The 'path' argument must point to an existing git repository\n folder, e.g.

\n\n
    /path/to/my_repo/.git/  (normal repository)\n                        objects/\n                        index\n                        HEAD\n\n    /path/to/bare_repo/     (bare repository)\n                    objects/\n                    index\n                    HEAD\n\nThe method will automatically detect if 'path' is a normal\nor bare repository or fail is 'path' is neither.\n
\n","group":"repository"},"git_repository_open2":{"type":"function","file":"repository.h","line":93,"lineto":97,"args":[{"name":"repository","type":"git_repository **","comment":"pointer to the repo which will be opened"},{"name":"git_dir","type":"const char *","comment":"The full path to the repository folder\n\t\te.g. a '.git' folder for live repos, any folder for bare\n\t\tEquivalent to $GIT_DIR. \n\t\tCannot be NULL."},{"name":"git_object_directory","type":"const char *","comment":"The full path to the ODB folder.\n\t\tthe folder where all the loose and packed objects are stored\n\t\tEquivalent to $GIT_OBJECT_DIRECTORY.\n\t\tIf NULL, \"$GIT_DIR/objects/\" is assumed."},{"name":"git_index_file","type":"const char *","comment":"The full path to the index (dircache) file\n\t\tEquivalent to $GIT_INDEX_FILE.\n\t\tIf NULL, \"$GIT_DIR/index\" is assumed."},{"name":"git_work_tree","type":"const char *","comment":"The full path to the working tree of the repository,\n\t\tif the repository is not bare.\n\t\tEquivalent to $GIT_WORK_TREE.\n\t\tIf NULL, the repository is assumed to be bare."}],"argline":"git_repository **repository, const char *git_dir, const char *git_object_directory, const char *git_index_file, const char *git_work_tree","sig":"git_repository **::const char *::const char *::const char *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Open a git repository by manually specifying all its paths

\n","comments":"","group":"repository"},"git_repository_open3":{"type":"function","file":"repository.h","line":129,"lineto":133,"args":[{"name":"repository","type":"git_repository **","comment":"pointer to the repo which will be opened"},{"name":"git_dir","type":"const char *","comment":"The full path to the repository folder\n\t\te.g. a '.git' folder for live repos, any folder for bare\n\t\tEquivalent to $GIT_DIR. \n\t\tCannot be NULL."},{"name":"object_database","type":"git_odb *","comment":"A pointer to a git_odb created \n&\n initialized\n\t\tby the user (e.g. with custom backends). This object database\n\t\twill be owned by the repository and will be automatically free'd.\n\t\tIt should not be manually free'd by the user, or this\n\t\tgit_repository object will become invalid."},{"name":"git_index_file","type":"const char *","comment":"The full path to the index (dircache) file\n\t\tEquivalent to $GIT_INDEX_FILE.\n\t\tIf NULL, \"$GIT_DIR/index\" is assumed."},{"name":"git_work_tree","type":"const char *","comment":"The full path to the working tree of the repository,\n\t\tif the repository is not bare.\n\t\tEquivalent to $GIT_WORK_TREE.\n\t\tIf NULL, the repository is assumed to be bare."}],"argline":"git_repository **repository, const char *git_dir, git_odb *object_database, const char *git_index_file, const char *git_work_tree","sig":"git_repository **::const char *::git_odb *::const char *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Open a git repository by manually specifying its paths and\n the object database it will use.

\n","comments":"","group":"repository"},"git_repository_database":{"type":"function","file":"repository.h","line":141,"lineto":141,"args":[{"name":"git_odb","type":"git_odb","comment":null},{"name":"repo","type":"git_repository *","comment":"a repository object"}],"argline":"git_odb git_odb, git_repository *repo","sig":"git_odb::git_repository *","return":{"type":"git_odb *","comment":" a pointer to the object db"},"description":"

Get the object database behind a Git repository

\n","comments":"","group":"repository"},"git_repository_index":{"type":"function","file":"repository.h","line":153,"lineto":153,"args":[{"name":"index","type":"git_index **","comment":"Pointer where to store the index"},{"name":"repo","type":"git_repository *","comment":"a repository object"}],"argline":"git_index **index, git_repository *repo","sig":"git_index **::git_repository *","return":{"type":"int","comment":" 0 on success; error code if the index could not be opened"},"description":"

Get the Index file of a Git repository

\n","comments":"

This is a cheap operation; the index is only opened on the first call,\n and subsequent calls only retrieve the previous pointer.

\n","group":"repository"},"git_repository_free":{"type":"function","file":"repository.h","line":166,"lineto":166,"args":[{"name":"repo","type":"git_repository *","comment":"repository handle to close. If NULL nothing occurs."}],"argline":"git_repository *repo","sig":"git_repository *","return":{"type":"void","comment":null},"description":"

Free a previously allocated repository

\n","comments":"

Note that after a repository is free'd, all the objects it has spawned\n will still exist until they are manually closed by the user\n with git_object_close, but accessing any of the attributes of\n an object without a backing repository will result in undefined\n behavior

\n","group":"repository"},"git_repository_init":{"type":"function","file":"repository.h","line":183,"lineto":183,"args":[{"name":"repo_out","type":"git_repository **","comment":"pointer to the repo which will be created or reinitialized"},{"name":"path","type":"const char *","comment":"the path to the repository"},{"name":"is_bare","type":"unsigned int","comment":"if true, a Git repository without a working directory is created \n\t\tat the pointed path. If false, provided path will be considered as the working \n\t\tdirectory into which the .git directory will be created."}],"argline":"git_repository **repo_out, const char *path, unsigned int is_bare","sig":"git_repository **::const char *::unsigned int","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Creates a new Git repository in the given folder.

\n","comments":"

TODO:\n - Reinit the repository\n - Create config files

\n","group":"repository"},"git_repository_is_empty":{"type":"function","file":"repository.h","line":195,"lineto":195,"args":[{"name":"repo","type":"git_repository *","comment":"Repo to test"}],"argline":"git_repository *repo","sig":"git_repository *","return":{"type":"int","comment":" 1 if the repository is empty, 0 if it isn't, error code\n if the repository is corrupted"},"description":"

Check if a repository is empty

\n","comments":"

An empty repository has just been initialized and contains\n no commits.

\n","group":"repository"},"git_repository_path":{"type":"function","file":"repository.h","line":203,"lineto":203,"args":[{"name":"repo","type":"git_repository *","comment":"a repository object"}],"argline":"git_repository *repo","sig":"git_repository *","return":{"type":"const char *","comment":" absolute path to the git directory"},"description":"

Get the normalized path to the git repository.

\n","comments":"","group":"repository"},"git_repository_workdir":{"type":"function","file":"repository.h","line":213,"lineto":213,"args":[{"name":"repo","type":"git_repository *","comment":"a repository object"}],"argline":"git_repository *repo","sig":"git_repository *","return":{"type":"const char *","comment":" NULL if the repository is bare; absolute path to the working directory otherwise."},"description":"

Get the normalized path to the working directory of the repository.

\n","comments":"

If the repository is bare, there is no working directory and NULL we be returned.

\n","group":"repository"},"git_revwalk_new":{"type":"function","file":"revwalk.h","line":88,"lineto":88,"args":[{"name":"walker","type":"git_revwalk **","comment":"pointer to the new revision walker"},{"name":"repo","type":"git_repository *","comment":"the repo to walk through"}],"argline":"git_revwalk **walker, git_repository *repo","sig":"git_revwalk **::git_repository *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Allocate a new revision walker to iterate through a repo.

\n","comments":"

This revision walker uses a custom memory pool and an internal\n commit cache, so it is relatively expensive to allocate.

\n\n

For maximum performance, this revision walker should be\n reused for different walks.

\n\n

This revision walker is not thread safe: it may only be\n used to walk a repository on a single thread; however,\n it is possible to have several revision walkers in\n several different threads walking the same repository.

\n","group":"revwalk"},"git_revwalk_reset":{"type":"function","file":"revwalk.h","line":103,"lineto":103,"args":[{"name":"walker","type":"git_revwalk *","comment":"handle to reset."}],"argline":"git_revwalk *walker","sig":"git_revwalk *","return":{"type":"void","comment":null},"description":"

Reset the revision walker for reuse.

\n","comments":"

This will clear all the pushed and hidden commits, and\n leave the walker in a blank state (just like at\n creation) ready to receive new commit pushes and\n start a new walk.

\n\n

The revision walk is automatically reset when a walk\n is over.

\n","group":"revwalk"},"git_revwalk_push":{"type":"function","file":"revwalk.h","line":120,"lineto":120,"args":[{"name":"walk","type":"git_revwalk *","comment":null},{"name":"oid","type":"const git_oid *","comment":"the oid of the commit to start from."}],"argline":"git_revwalk *walk, const git_oid *oid","sig":"git_revwalk *::const git_oid *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Mark a commit to start traversal from.

\n","comments":"

The given OID must belong to a commit on the walked\n repository.

\n\n

The given commit will be used as one of the roots\n when starting the revision walk. At least one commit\n must be pushed the repository before a walk can\n be started.

\n","group":"revwalk"},"git_revwalk_hide":{"type":"function","file":"revwalk.h","line":136,"lineto":136,"args":[{"name":"walk","type":"git_revwalk *","comment":null},{"name":"oid","type":"const git_oid *","comment":null}],"argline":"git_revwalk *walk, const git_oid *oid","sig":"git_revwalk *::const git_oid *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Mark a commit (and its ancestors) uninteresting for the output.

\n","comments":"

The given OID must belong to a commit on the walked\n repository.

\n\n

The resolved commit and all its parents will be hidden from the\n output on the revision walk.

\n","group":"revwalk"},"git_revwalk_next":{"type":"function","file":"revwalk.h","line":156,"lineto":156,"args":[{"name":"oid","type":"git_oid *","comment":"Pointer where to store the oid of the next commit"},{"name":"walk","type":"git_revwalk *","comment":"the walker to pop the commit from."}],"argline":"git_oid *oid, git_revwalk *walk","sig":"git_oid *::git_revwalk *","return":{"type":"int","comment":" GIT_SUCCESS if the next commit was found;\n\tGIT_EREVWALKOVER if there are no commits left to iterate"},"description":"

Get the next commit from the revision walk.

\n","comments":"

The initial call to this method is not blocking when\n iterating through a repo with a time-sorting mode.

\n\n

Iterating with Topological or inverted modes makes the initial\n call blocking to preprocess the commit list, but this block should be\n mostly unnoticeable on most repositories (topological preprocessing\n times at 0.3s on the git.git repo).

\n\n

The revision walker is reset when the walk is over.

\n","group":"revwalk"},"git_revwalk_sorting":{"type":"function","file":"revwalk.h","line":167,"lineto":167,"args":[{"name":"walk","type":"git_revwalk *","comment":"the walker being used for the traversal."},{"name":"sort_mode","type":"unsigned int","comment":"combination of GIT_SORT_XXX flags"}],"argline":"git_revwalk *walk, unsigned int sort_mode","sig":"git_revwalk *::unsigned int","return":{"type":"void","comment":null},"description":"

Change the sorting mode when iterating through the\n repository's contents.

\n","comments":"

Changing the sorting mode resets the walker.

\n","group":"revwalk"},"git_revwalk_free":{"type":"function","file":"revwalk.h","line":174,"lineto":174,"args":[{"name":"walk","type":"git_revwalk *","comment":"traversal handle to close. If NULL nothing occurs."}],"argline":"git_revwalk *walk","sig":"git_revwalk *","return":{"type":"void","comment":null},"description":"

Free a revision walker previously allocated.

\n","comments":"","group":"revwalk"},"git_revwalk_repository":{"type":"function","file":"revwalk.h","line":183,"lineto":183,"args":[{"name":"git_repository","type":"git_repository","comment":null},{"name":"walk","type":"git_revwalk *","comment":"the revision walker"}],"argline":"git_repository git_repository, git_revwalk *walk","sig":"git_repository::git_revwalk *","return":{"type":"git_repository *","comment":" the repository being walked"},"description":"

Return the repository on which this walker\n is operating.

\n","comments":"","group":"revwalk"},"git_signature_new":{"type":"function","file":"signature.h","line":50,"lineto":50,"args":[{"name":"git_signature","type":"git_signature","comment":null},{"name":"name","type":"const char *","comment":"name of the person"},{"name":"email","type":"const char *","comment":null},{"name":"time","type":"git_time_t","comment":"time when the action happened"},{"name":"offset","type":"int","comment":"timezone offset in minutes for the time"}],"argline":"git_signature git_signature, const char *name, const char *email, git_time_t time, int offset","sig":"git_signature::const char *::const char *::git_time_t::int","return":{"type":"git_signature *","comment":" the new sig, NULL on out of memory"},"description":"

Create a new action signature. The signature must be freed\n manually or using git_signature_free

\n","comments":"","group":"signature"},"git_signature_now":{"type":"function","file":"signature.h","line":60,"lineto":60,"args":[{"name":"git_signature","type":"git_signature","comment":null},{"name":"name","type":"const char *","comment":"name of the person"},{"name":"email","type":"const char *","comment":"email of the person"}],"argline":"git_signature git_signature, const char *name, const char *email","sig":"git_signature::const char *::const char *","return":{"type":"git_signature *","comment":" the new sig, NULL on out of memory"},"description":"

Create a new action signature with a timestamp of 'now'. The\n signature must be freed manually or using git_signature_free

\n","comments":"","group":"signature"},"git_signature_dup":{"type":"function","file":"signature.h","line":70,"lineto":70,"args":[{"name":"git_signature","type":"git_signature","comment":null},{"name":"sig","type":"const git_signature *","comment":"signature to duplicated"}],"argline":"git_signature git_signature, const git_signature *sig","sig":"git_signature::const git_signature *","return":{"type":"git_signature *","comment":" a copy of sig, NULL on out of memory"},"description":"

Create a copy of an existing signature.

\n","comments":"

All internal strings are also duplicated.

\n","group":"signature"},"git_signature_free":{"type":"function","file":"signature.h","line":77,"lineto":77,"args":[{"name":"sig","type":"git_signature *","comment":"signature to free"}],"argline":"git_signature *sig","sig":"git_signature *","return":{"type":"void","comment":null},"description":"

Free an existing signature

\n","comments":"","group":"signature"},"git_tag_lookup":{"type":"function","file":"tag.h","line":50,"lineto":53,"args":[{"name":"tag","type":"git_tag **","comment":"pointer to the looked up tag"},{"name":"repo","type":"git_repository *","comment":"the repo to use when locating the tag."},{"name":"id","type":"const git_oid *","comment":"identity of the tag to locate."},{"name":"","type":"","comment":null}],"argline":"git_tag **tag, git_repository *repo, const git_oid *id, ","sig":"git_tag **::git_repository *::const git_oid *::","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Lookup a tag object from the repository.

\n","comments":"","group":"tag"},"git_tag_close":{"type":"function","file":"tag.h","line":67,"lineto":70,"args":[{"name":"tag","type":"git_tag *","comment":"the tag to close"},{"name":"","type":"","comment":null}],"argline":"git_tag *tag, ","sig":"git_tag *::","return":{"type":"void","comment":null},"description":"

Close an open tag

\n","comments":"

This is a wrapper around git_object_close()

\n\n

IMPORTANT:\n It is necessary to call this method when you stop\n using a tag. Failure to do so will cause a memory leak.

\n","group":"tag"},"git_tag_id":{"type":"function","file":"tag.h","line":79,"lineto":79,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"tag","type":"git_tag *","comment":"a previously loaded tag."}],"argline":"git_oid git_oid, git_tag *tag","sig":"git_oid::git_tag *","return":{"type":"const git_oid *","comment":" object identity for the tag."},"description":"

Get the id of a tag.

\n","comments":"","group":"tag"},"git_tag_target":{"type":"function","file":"tag.h","line":91,"lineto":91,"args":[{"name":"target","type":"git_object **","comment":"pointer where to store the target"},{"name":"t","type":"git_tag *","comment":null}],"argline":"git_object **target, git_tag *t","sig":"git_object **::git_tag *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Get the tagged object of a tag

\n","comments":"

This method performs a repository lookup for the\n given object and returns it

\n","group":"tag"},"git_tag_target_oid":{"type":"function","file":"tag.h","line":99,"lineto":99,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"t","type":"git_tag *","comment":null}],"argline":"git_oid git_oid, git_tag *t","sig":"git_oid::git_tag *","return":{"type":"const git_oid *","comment":" pointer to the OID"},"description":"

Get the OID of the tagged object of a tag

\n","comments":"","group":"tag"},"git_tag_type":{"type":"function","file":"tag.h","line":107,"lineto":107,"args":[{"name":"git_otype","type":"git_otype","comment":null},{"name":"t","type":"git_tag *","comment":null}],"argline":"git_otype git_otype, git_tag *t","sig":"git_otype::git_tag *","return":{"type":"git_otype","comment":" type of the tagged object"},"description":"

Get the type of a tag's tagged object

\n","comments":"","group":"tag"},"git_tag_name":{"type":"function","file":"tag.h","line":115,"lineto":115,"args":[{"name":"t","type":"git_tag *","comment":null}],"argline":"git_tag *t","sig":"git_tag *","return":{"type":"const char *","comment":" name of the tag"},"description":"

Get the name of a tag

\n","comments":"","group":"tag"},"git_tag_tagger":{"type":"function","file":"tag.h","line":123,"lineto":123,"args":[{"name":"git_signature","type":"git_signature","comment":null},{"name":"t","type":"git_tag *","comment":null}],"argline":"git_signature git_signature, git_tag *t","sig":"git_signature::git_tag *","return":{"type":"const git_signature *","comment":" reference to the tag's author"},"description":"

Get the tagger (author) of a tag

\n","comments":"","group":"tag"},"git_tag_message":{"type":"function","file":"tag.h","line":131,"lineto":131,"args":[{"name":"t","type":"git_tag *","comment":null}],"argline":"git_tag *t","sig":"git_tag *","return":{"type":"const char *","comment":" message of the tag"},"description":"

Get the message of a tag

\n","comments":"","group":"tag"},"git_tag_create":{"type":"function","file":"tag.h","line":162,"lineto":169,"args":[{"name":"oid","type":"git_oid *","comment":"Pointer where to store the OID of the\n\tnewly created tag"},{"name":"repo","type":"git_repository *","comment":"Repository where to store the tag"},{"name":"tag_name","type":"const char *","comment":"Name for the tag; this name is validated\n for consistency. It should also not conflict with an \n already existing tag name"},{"name":"target","type":"const git_oid *","comment":"OID to which this tag points; note that no\n\tvalidation is done on this OID. Use the _o version of this\n\tmethod to assure a proper object is being tagged"},{"name":"target_type","type":"git_otype","comment":"Type of the tagged OID; note that no\n\tvalidation is performed here either"},{"name":"tagger","type":"const git_signature *","comment":"Signature of the tagger for this tag, and\n of the tagging time"},{"name":"message","type":"const char *","comment":"Full message for this tag"}],"argline":"git_oid *oid, git_repository *repo, const char *tag_name, const git_oid *target, git_otype target_type, const git_signature *tagger, const char *message","sig":"git_oid *::git_repository *::const char *::const git_oid *::git_otype::const git_signature *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise.\n\tA tag object is written to the ODB, and a proper reference\n\tis written in the /refs/tags folder, pointing to it"},"description":"

Create a new tag in the repository from an OID

\n","comments":"","group":"tag"},"git_tag_create_o":{"type":"function","file":"tag.h","line":184,"lineto":190,"args":[{"name":"oid","type":"git_oid *","comment":null},{"name":"repo","type":"git_repository *","comment":null},{"name":"tag_name","type":"const char *","comment":null},{"name":"target","type":"const git_object *","comment":null},{"name":"tagger","type":"const git_signature *","comment":null},{"name":"message","type":"const char *","comment":null}],"argline":"git_oid *oid, git_repository *repo, const char *tag_name, const git_object *target, const git_signature *tagger, const char *message","sig":"git_oid *::git_repository *::const char *::const git_object *::const git_signature *::const char *","return":{"type":"int","comment":null},"description":"

Create a new tag in the repository from an existing\n git_object instance

\n","comments":"

This method replaces the target and target_type\n paremeters of git_tag_create by a single instance\n of a const git_object *, which is assured to be\n a proper object in the ODB and hence will create\n a valid tag

\n","group":"tag"},"git_tag_create_frombuffer":{"type":"function","file":"tag.h","line":201,"lineto":204,"args":[{"name":"oid","type":"git_oid *","comment":"Pointer where to store the OID of the newly created tag"},{"name":"repo","type":"git_repository *","comment":"Repository where to store the tag"},{"name":"buffer","type":"const char *","comment":"Raw tag data"}],"argline":"git_oid *oid, git_repository *repo, const char *buffer","sig":"git_oid *::git_repository *::const char *","return":{"type":"int","comment":null},"description":"

Create a new tag in the repository from a buffer

\n","comments":"","group":"tag"},"git_tag_create_f":{"type":"function","file":"tag.h","line":234,"lineto":241,"args":[{"name":"oid","type":"git_oid *","comment":"Pointer where to store the OID of the\n\tnewly created tag"},{"name":"repo","type":"git_repository *","comment":"Repository where to store the tag"},{"name":"tag_name","type":"const char *","comment":"Name for the tag; this name is validated\n for consistency."},{"name":"target","type":"const git_oid *","comment":"OID to which this tag points; note that no\n\tvalidation is done on this OID. Use the _fo version of this\n\tmethod to assure a proper object is being tagged"},{"name":"target_type","type":"git_otype","comment":"Type of the tagged OID; note that no\n\tvalidation is performed here either"},{"name":"tagger","type":"const git_signature *","comment":"Signature of the tagger for this tag, and\n of the tagging time"},{"name":"message","type":"const char *","comment":"Full message for this tag"}],"argline":"git_oid *oid, git_repository *repo, const char *tag_name, const git_oid *target, git_otype target_type, const git_signature *tagger, const char *message","sig":"git_oid *::git_repository *::const char *::const git_oid *::git_otype::const git_signature *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise.\n\tA tag object is written to the ODB, and a proper reference\n\tis written in the /refs/tags folder, pointing to it"},"description":"

Create a new tag in the repository from an OID\n and overwrite an already existing tag reference, if any.

\n","comments":"","group":"tag"},"git_tag_create_fo":{"type":"function","file":"tag.h","line":256,"lineto":262,"args":[{"name":"oid","type":"git_oid *","comment":null},{"name":"repo","type":"git_repository *","comment":null},{"name":"tag_name","type":"const char *","comment":null},{"name":"target","type":"const git_object *","comment":null},{"name":"tagger","type":"const git_signature *","comment":null},{"name":"message","type":"const char *","comment":null}],"argline":"git_oid *oid, git_repository *repo, const char *tag_name, const git_object *target, const git_signature *tagger, const char *message","sig":"git_oid *::git_repository *::const char *::const git_object *::const git_signature *::const char *","return":{"type":"int","comment":null},"description":"

Create a new tag in the repository from an existing\n git_object instance and overwrite an already existing \n tag reference, if any.

\n","comments":"

This method replaces the target and target_type\n paremeters of git_tag_create_f by a single instance\n of a const git_object *, which is assured to be\n a proper object in the ODB and hence will create\n a valid tag

\n","group":"tag"},"git_tag_delete":{"type":"function","file":"tag.h","line":274,"lineto":276,"args":[{"name":"repo","type":"git_repository *","comment":"Repository where lives the tag"},{"name":"tag_name","type":"const char *","comment":"Name of the tag to be deleted;\n this name is validated for consistency."}],"argline":"git_repository *repo, const char *tag_name","sig":"git_repository *::const char *","return":{"type":"int","comment":" 0 on success; error code otherwise."},"description":"

Delete an existing tag reference.

\n","comments":"","group":"tag"},"git_tag_list":{"type":"function","file":"tag.h","line":291,"lineto":293,"args":[{"name":"tag_names","type":"git_strarray *","comment":null},{"name":"repo","type":"git_repository *","comment":"Repository where to find the tags"}],"argline":"git_strarray *tag_names, git_repository *repo","sig":"git_strarray *::git_repository *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Fill a list with all the tags in the Repository

\n","comments":"

The string array will be filled with the names of the\n matching tags; these values are owned by the user and\n should be free'd manually when no longer needed, using\n git_strarray_free.

\n","group":"tag"},"git_tree_lookup":{"type":"function","file":"tree.h","line":50,"lineto":53,"args":[{"name":"tree","type":"git_tree **","comment":"pointer to the looked up tree"},{"name":"repo","type":"git_repository *","comment":"the repo to use when locating the tree."},{"name":"id","type":"const git_oid *","comment":"identity of the tree to locate."},{"name":"","type":"","comment":null}],"argline":"git_tree **tree, git_repository *repo, const git_oid *id, ","sig":"git_tree **::git_repository *::const git_oid *::","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Lookup a tree object from the repository.

\n","comments":"","group":"tree"},"git_tree_close":{"type":"function","file":"tree.h","line":67,"lineto":70,"args":[{"name":"tree","type":"git_tree *","comment":"the tree to close"},{"name":"","type":"","comment":null}],"argline":"git_tree *tree, ","sig":"git_tree *::","return":{"type":"void","comment":null},"description":"

Close an open tree

\n","comments":"

This is a wrapper around git_object_close()

\n\n

IMPORTANT:\n It is necessary to call this method when you stop\n using a tree. Failure to do so will cause a memory leak.

\n","group":"tree"},"git_tree_id":{"type":"function","file":"tree.h","line":79,"lineto":79,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"tree","type":"git_tree *","comment":"a previously loaded tree."}],"argline":"git_oid git_oid, git_tree *tree","sig":"git_oid::git_tree *","return":{"type":"const git_oid *","comment":" object identity for the tree."},"description":"

Get the id of a tree.

\n","comments":"","group":"tree"},"git_tree_entrycount":{"type":"function","file":"tree.h","line":87,"lineto":87,"args":[{"name":"size_t","type":"size_t","comment":null},{"name":"tree","type":"git_tree *","comment":"a previously loaded tree."}],"argline":"size_t size_t, git_tree *tree","sig":"size_t::git_tree *","return":{"type":"size_t","comment":" the number of entries in the tree"},"description":"

Get the number of entries listed in a tree

\n","comments":"","group":"tree"},"git_tree_entry_byname":{"type":"function","file":"tree.h","line":96,"lineto":96,"args":[{"name":"git_tree_entry","type":"git_tree_entry","comment":null},{"name":"tree","type":"git_tree *","comment":"a previously loaded tree."},{"name":"filename","type":"const char *","comment":"the filename of the desired entry"}],"argline":"git_tree_entry git_tree_entry, git_tree *tree, const char *filename","sig":"git_tree_entry::git_tree *::const char *","return":{"type":"const git_tree_entry *","comment":" the tree entry; NULL if not found"},"description":"

Lookup a tree entry by its filename

\n","comments":"","group":"tree"},"git_tree_entry_byindex":{"type":"function","file":"tree.h","line":105,"lineto":105,"args":[{"name":"git_tree_entry","type":"git_tree_entry","comment":null},{"name":"tree","type":"git_tree *","comment":"a previously loaded tree."},{"name":"idx","type":"int","comment":"the position in the entry list"}],"argline":"git_tree_entry git_tree_entry, git_tree *tree, int idx","sig":"git_tree_entry::git_tree *::int","return":{"type":"const git_tree_entry *","comment":" the tree entry; NULL if not found"},"description":"

Lookup a tree entry by its position in the tree

\n","comments":"","group":"tree"},"git_tree_entry_attributes":{"type":"function","file":"tree.h","line":113,"lineto":113,"args":[{"name":"entry","type":"const git_tree_entry *","comment":"a tree entry"}],"argline":"const git_tree_entry *entry","sig":"const git_tree_entry *","return":{"type":"unsigned int","comment":" attributes as an integer"},"description":"

Get the UNIX file attributes of a tree entry

\n","comments":"","group":"tree"},"git_tree_entry_name":{"type":"function","file":"tree.h","line":121,"lineto":121,"args":[{"name":"entry","type":"const git_tree_entry *","comment":"a tree entry"}],"argline":"const git_tree_entry *entry","sig":"const git_tree_entry *","return":{"type":"const char *","comment":" the name of the file"},"description":"

Get the filename of a tree entry

\n","comments":"","group":"tree"},"git_tree_entry_id":{"type":"function","file":"tree.h","line":129,"lineto":129,"args":[{"name":"git_oid","type":"git_oid","comment":null},{"name":"entry","type":"const git_tree_entry *","comment":"a tree entry"}],"argline":"git_oid git_oid, const git_tree_entry *entry","sig":"git_oid::const git_tree_entry *","return":{"type":"const git_oid *","comment":" the oid of the object"},"description":"

Get the id of the object pointed by the entry

\n","comments":"","group":"tree"},"git_tree_entry_2object":{"type":"function","file":"tree.h","line":139,"lineto":139,"args":[{"name":"object_out","type":"git_object **","comment":null},{"name":"repo","type":"git_repository *","comment":"repository where to lookup the pointed object"},{"name":"entry","type":"const git_tree_entry *","comment":"a tree entry"}],"argline":"git_object **object_out, git_repository *repo, const git_tree_entry *entry","sig":"git_object **::git_repository *::const git_tree_entry *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Convert a tree entry to the git_object it points too.

\n","comments":"","group":"tree"},"git_tree_create_fromindex":{"type":"function","file":"tree.h","line":157,"lineto":157,"args":[{"name":"oid","type":"git_oid *","comment":"Pointer where to store the written tree"},{"name":"index","type":"git_index *","comment":"Index to write"}],"argline":"git_oid *oid, git_index *index","sig":"git_oid *::git_index *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Write a tree to the ODB from the index file

\n","comments":"

This method will scan the index and write a representation\n of its current state back to disk; it recursively creates\n tree objects for each of the subtrees stored in the index,\n but only returns the OID of the root tree. This is the OID\n that can be used e.g. to create a commit.

\n\n

The index instance cannot be bare, and needs to be associated\n to an existing repository.

\n","group":"tree"},"git_treebuilder_create":{"type":"function","file":"tree.h","line":176,"lineto":176,"args":[{"name":"builder_p","type":"git_treebuilder **","comment":"Pointer where to store the tree builder"},{"name":"source","type":"const git_tree *","comment":"Source tree to initialize the builder (optional)"}],"argline":"git_treebuilder **builder_p, const git_tree *source","sig":"git_treebuilder **::const git_tree *","return":{"type":"int","comment":" 0 on sucess; error code otherwise"},"description":"

Create a new tree builder.

\n","comments":"

The tree builder can be used to create or modify\n trees in memory and write them as tree objects to the\n database.

\n\n

If the source parameter is not NULL, the tree builder\n will be initialized with the entries of the given tree.

\n\n

If the source parameter is NULL, the tree builder will\n have no entries and will have to be filled manually.

\n","group":"treebuilder"},"git_treebuilder_clear":{"type":"function","file":"tree.h","line":183,"lineto":183,"args":[{"name":"bld","type":"git_treebuilder *","comment":"Builder to clear"}],"argline":"git_treebuilder *bld","sig":"git_treebuilder *","return":{"type":"void","comment":null},"description":"

Clear all the entires in the builder

\n","comments":"","group":"treebuilder"},"git_treebuilder_free":{"type":"function","file":"tree.h","line":194,"lineto":194,"args":[{"name":"bld","type":"git_treebuilder *","comment":"Builder to free"}],"argline":"git_treebuilder *bld","sig":"git_treebuilder *","return":{"type":"void","comment":null},"description":"

Free a tree builder

\n","comments":"

This will clear all the entries and free to builder.\n Failing to free the builder after you're done using it\n will result in a memory leak

\n","group":"treebuilder"},"git_treebuilder_get":{"type":"function","file":"tree.h","line":206,"lineto":206,"args":[{"name":"git_tree_entry","type":"git_tree_entry","comment":null},{"name":"bld","type":"git_treebuilder *","comment":"Tree builder"},{"name":"filename","type":"const char *","comment":"Name of the entry"}],"argline":"git_tree_entry git_tree_entry, git_treebuilder *bld, const char *filename","sig":"git_tree_entry::git_treebuilder *::const char *","return":{"type":"const git_tree_entry *","comment":" pointer to the entry; NULL if not found"},"description":"

Get an entry from the builder from its filename

\n","comments":"

The returned entry is owned by the builder and should\n not be freed manually.

\n","group":"treebuilder"},"git_treebuilder_insert":{"type":"function","file":"tree.h","line":227,"lineto":227,"args":[{"name":"entry_out","type":"git_tree_entry **","comment":"Pointer to store the entry (optional)"},{"name":"bld","type":"git_treebuilder *","comment":"Tree builder"},{"name":"filename","type":"const char *","comment":"Filename of the entry"},{"name":"id","type":"const git_oid *","comment":"SHA1 oid of the entry"},{"name":"attributes","type":"unsigned int","comment":"Folder attributes of the entry"}],"argline":"git_tree_entry **entry_out, git_treebuilder *bld, const char *filename, const git_oid *id, unsigned int attributes","sig":"git_tree_entry **::git_treebuilder *::const char *::const git_oid *::unsigned int","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Add or update an entry to the builder

\n","comments":"

Insert a new entry for filename in the builder with the\n given attributes.

\n\n

if an entry named filename already exists, its attributes\n will be updated with the given ones.

\n\n

The optional pointer entry_out can be used to retrieve a\n pointer to the newly created/updated entry.

\n","group":"treebuilder"},"git_treebuilder_remove":{"type":"function","file":"tree.h","line":235,"lineto":235,"args":[{"name":"bld","type":"git_treebuilder *","comment":"Tree builder"},{"name":"filename","type":"const char *","comment":"Filename of the entry to remove"}],"argline":"git_treebuilder *bld, const char *filename","sig":"git_treebuilder *::const char *","return":{"type":"int","comment":null},"description":"

Remove an entry from the builder by its filename

\n","comments":"","group":"treebuilder"},"git_treebuilder_filter":{"type":"function","file":"tree.h","line":248,"lineto":248,"args":[{"name":"bld","type":"git_treebuilder *","comment":"Tree builder"},{"name":"filter","type":"int (*)(const git_tree_entry *, void *)","comment":"Callback to filter entries"},{"name":"payload","type":"void *","comment":null}],"argline":"git_treebuilder *bld, int (*)(const git_tree_entry *, void *) filter, void *payload","sig":"git_treebuilder *::int (*)(const git_tree_entry *, void *)::void *","return":{"type":"void","comment":null},"description":"

Filter the entries in the tree

\n","comments":"

The filter callback will be called for each entry\n in the tree with a pointer to the entry and the\n provided payload: if the callback returns 1, the\n entry will be filtered (removed from the builder).

\n","group":"treebuilder"},"git_treebuilder_write":{"type":"function","file":"tree.h","line":262,"lineto":262,"args":[{"name":"oid","type":"git_oid *","comment":"Pointer where to store the written OID"},{"name":"repo","type":"git_repository *","comment":"Repository where to store the object"},{"name":"bld","type":"git_treebuilder *","comment":"Tree builder to write"}],"argline":"git_oid *oid, git_repository *repo, git_treebuilder *bld","sig":"git_oid *::git_repository *::git_treebuilder *","return":{"type":"int","comment":" 0 on success; error code otherwise"},"description":"

Write the contents of the tree builder as a tree object

\n","comments":"

The tree builder will be written to the given repo, and\n it's identifying SHA1 hash will be stored in the oid\n pointer.

\n","group":"treebuilder"}},"globals":{},"types":[["git_index_entry",{"decl":["git_index_time ctime","git_index_time mtime","unsigned int dev","unsigned int ino","unsigned int mode","unsigned int uid","unsigned int gid","git_off_t file_size","git_oid oid","unsigned short flags","unsigned short flags_extended","char * path"],"type":"struct","value":"git_index_entry","file":"index.h","line":85,"lineto":102,"block":"git_index_time ctime\ngit_index_time mtime\nunsigned int dev\nunsigned int ino\nunsigned int mode\nunsigned int uid\nunsigned int gid\ngit_off_t file_size\ngit_oid oid\nunsigned short flags\nunsigned short flags_extended\nchar * path","tdef":"typedef","comments":"","fields":[{"type":"git_index_time","name":"ctime","comments":""},{"type":"git_index_time","name":"mtime","comments":""},{"type":"unsigned int","name":"dev","comments":""},{"type":"unsigned int","name":"ino","comments":""},{"type":"unsigned int","name":"mode","comments":""},{"type":"unsigned int","name":"uid","comments":""},{"type":"unsigned int","name":"gid","comments":""},{"type":"git_off_t","name":"file_size","comments":""},{"type":"git_oid","name":"oid","comments":""},{"type":"unsigned short","name":"flags","comments":""},{"type":"unsigned short","name":"flags_extended","comments":""},{"type":"char *","name":"path","comments":""}],"used":{"returns":["git_index_get"],"needs":["git_index_add2","git_index_append2","git_index_get"]}}],["git_index_time",{"decl":["git_time_t seconds","unsigned int nanoseconds"],"type":"struct","value":"git_index_time","file":"index.h","line":78,"lineto":82,"block":"git_time_t seconds\nunsigned int nanoseconds","tdef":"typedef","comments":"","fields":[{"type":"git_time_t","name":"seconds","comments":""},{"type":"unsigned int","name":"nanoseconds","comments":""}],"used":{"returns":[],"needs":[]}}],["git_odb_backend",{"decl":["git_odb * odb","int (*)(void **, size_t *, git_otype *, struct git_odb_backend *, const git_oid *) read","int (*)(size_t *, git_otype *, struct git_odb_backend *, const git_oid *) read_header","int (*)(git_oid *, struct git_odb_backend *, const void *, size_t, git_otype) write","int (*)(struct git_odb_stream **, struct git_odb_backend *, size_t, git_otype) writestream","int (*)(struct git_odb_stream **, struct git_odb_backend *, const git_oid *) readstream","int (*)(struct git_odb_backend *, const git_oid *) exists","void (*)(struct git_odb_backend *) free"],"type":"struct","value":"git_odb_backend","file":"odb_backend.h","line":44,"lineto":80,"block":"git_odb * odb\nint (*)(void **, size_t *, git_otype *, struct git_odb_backend *, const git_oid *) read\nint (*)(size_t *, git_otype *, struct git_odb_backend *, const git_oid *) read_header\nint (*)(git_oid *, struct git_odb_backend *, const void *, size_t, git_otype) write\nint (*)(struct git_odb_stream **, struct git_odb_backend *, size_t, git_otype) writestream\nint (*)(struct git_odb_stream **, struct git_odb_backend *, const git_oid *) readstream\nint (*)(struct git_odb_backend *, const git_oid *) exists\nvoid (*)(struct git_odb_backend *) free","tdef":null,"comments":"","fields":[{"type":"git_odb *","name":"odb","comments":""},{"type":"int (*)(void **, size_t *, git_otype *, struct git_odb_backend *, const git_oid *)","name":"read","comments":""},{"type":"int (*)(size_t *, git_otype *, struct git_odb_backend *, const git_oid *)","name":"read_header","comments":""},{"type":"int (*)(git_oid *, struct git_odb_backend *, const void *, size_t, git_otype)","name":"write","comments":""},{"type":"int (*)(struct git_odb_stream **, struct git_odb_backend *, size_t, git_otype)","name":"writestream","comments":""},{"type":"int (*)(struct git_odb_stream **, struct git_odb_backend *, const git_oid *)","name":"readstream","comments":""},{"type":"int (*)(struct git_odb_backend *, const git_oid *)","name":"exists","comments":""},{"type":"void (*)(struct git_odb_backend *)","name":"free","comments":""}],"used":{"returns":[],"needs":["git_odb_add_alternate","git_odb_add_backend"]}}],["git_odb_stream",{"decl":["struct git_odb_backend * backend","int mode","int (*)(struct git_odb_stream *, char *, size_t) read","int (*)(struct git_odb_stream *, const char *, size_t) write","int (*)(git_oid *, struct git_odb_stream *) finalize_write","void (*)(struct git_odb_stream *) free"],"type":"struct","value":"git_odb_stream","file":"odb_backend.h","line":83,"lineto":91,"tdef":null,"comments":"

@\n{

\n","fields":[{"type":"struct git_odb_backend *","name":"backend","comments":""},{"type":"int","name":"mode","comments":""},{"type":"int (*)(struct git_odb_stream *, char *, size_t)","name":"read","comments":""},{"type":"int (*)(struct git_odb_stream *, const char *, size_t)","name":"write","comments":""},{"type":"int (*)(git_oid *, struct git_odb_stream *)","name":"finalize_write","comments":""},{"type":"void (*)(struct git_odb_stream *)","name":"free","comments":""}],"block":"struct git_odb_backend * backend\nint mode\nint (*)(struct git_odb_stream *, char *, size_t) read\nint (*)(struct git_odb_stream *, const char *, size_t) write\nint (*)(git_oid *, struct git_odb_stream *) finalize_write\nvoid (*)(struct git_odb_stream *) free","used":{"returns":[],"needs":["git_odb_open_rstream","git_odb_open_wstream"]}}],["git_odb_streammode",{"decl":["GIT_STREAM_RDONLY","GIT_STREAM_WRONLY","GIT_STREAM_RW"],"type":"enum","file":"odb_backend.h","line":94,"lineto":98,"block":"GIT_STREAM_RDONLY\nGIT_STREAM_WRONLY\nGIT_STREAM_RW","tdef":"typedef","comments":"","fields":[{"type":"int","name":"GIT_STREAM_RDONLY","comments":"","value":2},{"type":"int","name":"GIT_STREAM_WRONLY","comments":"","value":4},{"type":"int","name":"GIT_STREAM_RW","comments":"","value":6}],"used":{"returns":[],"needs":[]}}],["git_oid",{"decl":["unsigned char [20] id"],"type":"struct","value":"git_oid","file":"oid.h","line":47,"lineto":50,"block":"unsigned char [20] id","tdef":"typedef","comments":"","fields":[{"type":"unsigned char [20]","name":"id","comments":" raw binary formatted id "}],"used":{"returns":["git_commit_id","git_commit_parent_oid","git_commit_tree_oid","git_object_id","git_odb_object_id","git_reference_oid","git_tag_id","git_tag_target_oid","git_tree_entry_id","git_tree_id"],"needs":["git_blob_create_frombuffer","git_blob_create_fromfile","git_blob_lookup","git_commit_create","git_commit_create_o","git_commit_create_ov","git_commit_create_v","git_commit_id","git_commit_lookup","git_commit_parent_oid","git_commit_tree_oid","git_object_id","git_object_lookup","git_odb_exists","git_odb_hash","git_odb_object_id","git_odb_open_rstream","git_odb_read","git_odb_read_header","git_odb_write","git_oid_allocfmt","git_oid_cmp","git_oid_cpy","git_oid_fmt","git_oid_mkraw","git_oid_mkstr","git_oid_pathfmt","git_oid_to_string","git_reference_create_oid","git_reference_create_oid_f","git_reference_oid","git_reference_set_oid","git_revwalk_hide","git_revwalk_next","git_revwalk_push","git_tag_create","git_tag_create_f","git_tag_create_fo","git_tag_create_frombuffer","git_tag_create_o","git_tag_id","git_tag_lookup","git_tag_target_oid","git_tree_create_fromindex","git_tree_entry_id","git_tree_id","git_tree_lookup","git_treebuilder_insert","git_treebuilder_write"]}}],["git_otype",{"decl":["GIT_OBJ_ANY","GIT_OBJ_BAD","GIT_OBJ__EXT1","GIT_OBJ_COMMIT","GIT_OBJ_TREE","GIT_OBJ_BLOB","GIT_OBJ_TAG","GIT_OBJ__EXT2","GIT_OBJ_OFS_DELTA","GIT_OBJ_REF_DELTA"],"type":"enum","file":"types.h","line":75,"lineto":86,"block":"GIT_OBJ_ANY\nGIT_OBJ_BAD\nGIT_OBJ__EXT1\nGIT_OBJ_COMMIT\nGIT_OBJ_TREE\nGIT_OBJ_BLOB\nGIT_OBJ_TAG\nGIT_OBJ__EXT2\nGIT_OBJ_OFS_DELTA\nGIT_OBJ_REF_DELTA","tdef":"typedef","comments":"","fields":[{"type":"int","name":"GIT_OBJ_ANY","comments":"

Object can be any of the following

\n","value":-2},{"type":"int","name":"GIT_OBJ_BAD","comments":"

Object is invalid.

\n","value":-1},{"type":"int","name":"GIT_OBJ__EXT1","comments":"

Reserved for future use.

\n","value":0},{"type":"int","name":"GIT_OBJ_COMMIT","comments":"

A commit object.

\n","value":1},{"type":"int","name":"GIT_OBJ_TREE","comments":"

A tree (directory listing) object.

\n","value":2},{"type":"int","name":"GIT_OBJ_BLOB","comments":"

A file revision object.

\n","value":3},{"type":"int","name":"GIT_OBJ_TAG","comments":"

An annotated tag object.

\n","value":4},{"type":"int","name":"GIT_OBJ__EXT2","comments":"

Reserved for future use.

\n","value":5},{"type":"int","name":"GIT_OBJ_OFS_DELTA","comments":"

A delta, base is given by an offset.

\n","value":6},{"type":"int","name":"GIT_OBJ_REF_DELTA","comments":"

A delta, base is given by object id.

\n","value":7}],"used":{"returns":[],"needs":["git_object__size","git_object_lookup","git_object_string2type","git_object_type","git_object_type2string","git_object_typeisloose","git_odb_hash","git_odb_object_type","git_odb_open_wstream","git_odb_read_header","git_odb_write","git_tag_create","git_tag_create_f","git_tag_type"]}}],["git_rtype",{"decl":["GIT_REF_INVALID","GIT_REF_OID","GIT_REF_SYMBOLIC","GIT_REF_PACKED","GIT_REF_HAS_PEEL","GIT_REF_LISTALL"],"type":"enum","file":"types.h","line":150,"lineto":157,"block":"GIT_REF_INVALID\nGIT_REF_OID\nGIT_REF_SYMBOLIC\nGIT_REF_PACKED\nGIT_REF_HAS_PEEL\nGIT_REF_LISTALL","tdef":"typedef","comments":"","fields":[{"type":"int","name":"GIT_REF_INVALID","comments":"","value":0},{"type":"int","name":"GIT_REF_OID","comments":"

Invalid reference

\n","value":1},{"type":"int","name":"GIT_REF_SYMBOLIC","comments":"

A reference which points at an object id

\n","value":2},{"type":"int","name":"GIT_REF_PACKED","comments":"

A reference which points at another reference

\n","value":4},{"type":"int","name":"GIT_REF_HAS_PEEL","comments":"

A reference which points at another reference

\n","value":8},{"type":"int","name":"GIT_REF_LISTALL","comments":"

A reference which points at another reference

\n","value":7}],"used":{"returns":[],"needs":["git_reference_type"]}}],["git_signature",{"decl":["char * name","char * email","git_time when"],"type":"struct","value":"git_signature","file":"types.h","line":140,"lineto":144,"block":"char * name\nchar * email\ngit_time when","tdef":"typedef","comments":"","fields":[{"type":"char *","name":"name","comments":""},{"type":"char *","name":"email","comments":" full name of the author "},{"type":"git_time","name":"when","comments":" email of the author "}],"used":{"returns":["git_commit_author","git_commit_committer","git_signature_dup","git_signature_new","git_signature_now","git_tag_tagger"],"needs":["git_commit_author","git_commit_committer","git_commit_create","git_commit_create_o","git_commit_create_ov","git_commit_create_v","git_signature_dup","git_signature_free","git_signature_new","git_signature_now","git_tag_create","git_tag_create_f","git_tag_create_fo","git_tag_create_o","git_tag_tagger"]}}],["git_strarray",{"decl":["char ** strings","size_t count"],"type":"struct","value":"git_strarray","file":"common.h","line":89,"lineto":92,"block":"char ** strings\nsize_t count","tdef":"typedef","comments":"

@\n{

\n","fields":[{"type":"char **","name":"strings","comments":""},{"type":"size_t","name":"count","comments":""}],"used":{"returns":[],"needs":["git_reference_listall","git_tag_list"]}}],["git_time",{"decl":["git_time_t time","int offset"],"type":"struct","value":"git_time","file":"types.h","line":134,"lineto":137,"block":"git_time_t time\nint offset","tdef":"typedef","comments":"","fields":[{"type":"git_time_t","name":"time","comments":""},{"type":"int","name":"offset","comments":" time in seconds from epoch "}],"used":{"returns":[],"needs":[]}}]],"prefix":"include/git2","groups":[["blob",["git_blob_close","git_blob_create_frombuffer","git_blob_create_fromfile","git_blob_lookup","git_blob_rawcontent","git_blob_rawsize"]],["commit",["git_commit_author","git_commit_close","git_commit_committer","git_commit_create","git_commit_create_o","git_commit_create_ov","git_commit_create_v","git_commit_id","git_commit_lookup","git_commit_message","git_commit_message_short","git_commit_parent","git_commit_parent_oid","git_commit_parentcount","git_commit_time","git_commit_time_offset","git_commit_tree","git_commit_tree_oid"]],["index",["git_index_add","git_index_add2","git_index_append","git_index_append2","git_index_clear","git_index_entrycount","git_index_find","git_index_free","git_index_get","git_index_open_bare","git_index_open_inrepo","git_index_read","git_index_remove","git_index_write"]],["object",["git_object__size","git_object_close","git_object_id","git_object_lookup","git_object_owner","git_object_string2type","git_object_type","git_object_type2string","git_object_typeisloose"]],["odb",["git_odb_add_alternate","git_odb_add_backend","git_odb_close","git_odb_exists","git_odb_hash","git_odb_new","git_odb_object_close","git_odb_object_data","git_odb_object_id","git_odb_object_size","git_odb_object_type","git_odb_open","git_odb_open_rstream","git_odb_open_wstream","git_odb_read","git_odb_read_header","git_odb_write"]],["oid",["git_oid_allocfmt","git_oid_cmp","git_oid_cpy","git_oid_fmt","git_oid_mkraw","git_oid_mkstr","git_oid_pathfmt","git_oid_shorten_add","git_oid_shorten_free","git_oid_shorten_new","git_oid_to_string"]],["reference",["git_reference_create_oid","git_reference_create_oid_f","git_reference_create_symbolic","git_reference_create_symbolic_f","git_reference_delete","git_reference_listall","git_reference_listcb","git_reference_lookup","git_reference_name","git_reference_oid","git_reference_owner","git_reference_packall","git_reference_rename","git_reference_rename_f","git_reference_resolve","git_reference_set_oid","git_reference_set_target","git_reference_target","git_reference_type"]],["repository",["git_repository_database","git_repository_free","git_repository_index","git_repository_init","git_repository_is_empty","git_repository_open","git_repository_open2","git_repository_open3","git_repository_path","git_repository_workdir"]],["revwalk",["git_revwalk_free","git_revwalk_hide","git_revwalk_new","git_revwalk_next","git_revwalk_push","git_revwalk_repository","git_revwalk_reset","git_revwalk_sorting"]],["signature",["git_signature_dup","git_signature_free","git_signature_new","git_signature_now"]],["tag",["git_tag_close","git_tag_create","git_tag_create_f","git_tag_create_fo","git_tag_create_frombuffer","git_tag_create_o","git_tag_delete","git_tag_id","git_tag_list","git_tag_lookup","git_tag_message","git_tag_name","git_tag_tagger","git_tag_target","git_tag_target_oid","git_tag_type"]],["tree",["git_tree_close","git_tree_create_fromindex","git_tree_entry_2object","git_tree_entry_attributes","git_tree_entry_byindex","git_tree_entry_byname","git_tree_entry_id","git_tree_entry_name","git_tree_entrycount","git_tree_id","git_tree_lookup"]],["treebuilder",["git_treebuilder_clear","git_treebuilder_create","git_treebuilder_filter","git_treebuilder_free","git_treebuilder_get","git_treebuilder_insert","git_treebuilder_remove","git_treebuilder_write"]]]}