Flags for creating the commit.
If allow_empty_commit
is specified, a commit with no changes from the prior commit (and "empty" commit) is allowed. Otherwise, commit creation will be stopped.
Encoding for the commit message; leave NULL for default.