Commits the staged changes in the repository; this is a near analog to git commit -m message.
git commit -m message
By default, empty commits are not allowed.
pointer to store the new commit's object id
repository to commit changes in
the commit message
options for creating the commit
0 on success, GIT_EUNCHANGED if there were no changes to commit, or an error code