Create a new commit in the repository with an callback to supply parents.
See documentation for git_commit_create()
for information about the
parameters, as the meaning is identical excepting that tree
takes a
git_oid
and doesn't check for validity, and parent_cb
is invoked
with parent_payload
and should return git_oid
values or NULL to
indicate that all parents are accounted for.
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.
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.
Full message for this commit
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
.
User-specified payload to provide to the callback
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