git_commit_create

Create new commit in the repository from a list of git_object pointers

The message will **not** be cleaned up automatically. You can do that with the git_message_prettify() function.

@param id Pointer in which to store the OID of the newly created commit

@param repo Repository where to store the commit

@param update_ref If not null, name of the reference that will be updated to point to this commit. If the reference is not direct, it will be resolved to a direct reference. Use "HEAD" to update the HEAD of the current branch and make it point to this commit. If the reference doesn't exist yet, it will be created. If it does exist, the first parent must be the tip of this branch.

@param author Signature with author and author time of commit

@param committer Signature with committer and * commit time of commit

@param message_encoding The encoding for the message in the commit, represented with a standard encoding name. E.g. "UTF-8". If null, no encoding header is written and UTF-8 is assumed.

@param message Full message for this commit

@param tree An instance of a git_tree object that will be used as the tree for the commit. This tree object must also be owned by the given repo.

@param parent_count Number of parents for this commit

@param parents Array of parent_count pointers to git_commit objects that will be used as the parents for this commit. This array may be null if parent_count is 0 (root commit). All the given commits must be owned by the repo.

@return 0 or an error code The created commit will be written to the Object Database and the given reference will be updated to point to it

Meta