summaryrefslogtreecommitdiff
path: root/include/git2/commit.h
diff options
context:
space:
mode:
authorCarlos Martín Nieto <cmn@dwim.me>2016-03-10 10:53:20 +0100
committerCarlos Martín Nieto <cmn@dwim.me>2016-03-15 12:55:03 +0100
commit02d61a3b66a6e5f5bc0154d780daaf5f7b71ccd9 (patch)
tree1dadcb0464c89bf1863a83c826931f93c655e5da /include/git2/commit.h
parent2ba9a0ddacd315dafb54990ff2bfa204e6924016 (diff)
downloadlibgit2-cmn/commit-with-signature.tar.gz
commit: add function to attach a signature to a commitcmn/commit-with-signature
In combination with the function which creates a commit into a buffer, this allows us to more easily create signed commits.
Diffstat (limited to 'include/git2/commit.h')
-rw-r--r--include/git2/commit.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/include/git2/commit.h b/include/git2/commit.h
index 44ea8882b..f63a90685 100644
--- a/include/git2/commit.h
+++ b/include/git2/commit.h
@@ -440,6 +440,27 @@ GIT_EXTERN(int) git_commit_create_buffer(
size_t parent_count,
const git_commit *parents[]);
+/**
+ * Create a commit object from the given buffer and signature
+ *
+ * Given the unsigned commit object's contents, its signature and the
+ * header field in which to store the signature, attach the signature
+ * to the commit and write it into the given repository.
+ *
+ * @param out the resulting commit id
+ * @param commit_content the content of the unsigned commit object
+ * @param signature the signature to add to the commit
+ * @param signature_field which header field should contain this
+ * signature. Leave `NULL` for the default of "gpgsig"
+ * @return 0 or an error code
+ */
+GIT_EXTERN(int) git_commit_create_with_signature(
+ git_oid *out,
+ git_repository *repo,
+ const char *commit_content,
+ const char *signature,
+ const char *signature_field);
+
/** @} */
GIT_END_DECL
#endif