summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAimeast <lixd3389@gmail.com>2014-03-18 22:31:14 +0800
committerAimeast <lixd3389@gmail.com>2014-03-18 22:31:14 +0800
commit0aee025befc82efe3b8a92692ebe852ac56171dd (patch)
tree7c4cbdc6565496ba7619fce3ed6dc607c185d33f /include
parenta7af1f7dd6929d2c903aa932ae5ea10d368e75d0 (diff)
downloadlibgit2-0aee025befc82efe3b8a92692ebe852ac56171dd.tar.gz
Implement git_merge_base_octopus
Diffstat (limited to 'include')
-rw-r--r--include/git2/merge.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/include/git2/merge.h b/include/git2/merge.h
index 3563f35d5..cfec32f4d 100644
--- a/include/git2/merge.h
+++ b/include/git2/merge.h
@@ -191,7 +191,7 @@ GIT_EXTERN(int) git_merge_base(
* @param repo the repository where the commits exist
* @param length The number of commits in the provided `input_array`
* @param input_array oids of the commits
- * @return 0 on success, GIT_ENOTFOUND if not found or error code
+ * @return Zero on success; GIT_ENOTFOUND or -1 on failure.
*/
GIT_EXTERN(int) git_merge_base_many(
git_oid *out,
@@ -200,6 +200,21 @@ GIT_EXTERN(int) git_merge_base_many(
const git_oid input_array[]);
/**
+ * Find a merge base in preparation for an octopus merge
+ *
+ * @param out the OID of a merge base considering all the commits
+ * @param repo the repository where the commits exist
+ * @param length The number of commits in the provided `input_array`
+ * @param input_array oids of the commits
+ * @return Zero on success; GIT_ENOTFOUND or -1 on failure.
+ */
+GIT_EXTERN(int) git_merge_base_octopus(
+ git_oid *out,
+ git_repository *repo,
+ size_t length,
+ const git_oid input_array[]);
+
+/**
* Creates a `git_merge_head` from the given reference. The resulting
* git_merge_head must be freed with `git_merge_head_free`.
*