Commit 5e44d9bc by Edward Thomson

Better document `git_merge_commits`

`git_merge_commits` (and thus `git_merge`) do not use the same
strategy as `git-merge-recursive` wherein they can produce an
artificial common ancestor that is the merge of all common
ancestors.  Document this accordingly.
parent c4a2fd5c
...@@ -479,6 +479,10 @@ GIT_EXTERN(int) git_merge_trees( ...@@ -479,6 +479,10 @@ GIT_EXTERN(int) git_merge_trees(
* or checked out. If the index is to be converted to a tree, the caller * or checked out. If the index is to be converted to a tree, the caller
* should resolve any conflicts that arose as part of the merge. * should resolve any conflicts that arose as part of the merge.
* *
* The merge performed uses the first common ancestor, unlike the
* `git-merge-recursive` strategy, which may produce an artificial common
* ancestor tree when there are multiple ancestors.
*
* The returned index must be freed explicitly with `git_index_free`. * The returned index must be freed explicitly with `git_index_free`.
* *
* @param out pointer to store the index result in * @param out pointer to store the index result in
...@@ -501,6 +505,10 @@ GIT_EXTERN(int) git_merge_commits( ...@@ -501,6 +505,10 @@ GIT_EXTERN(int) git_merge_commits(
* to the index. Callers should inspect the repository's index after this * to the index. Callers should inspect the repository's index after this
* completes, resolve any conflicts and prepare a commit. * completes, resolve any conflicts and prepare a commit.
* *
* The merge performed uses the first common ancestor, unlike the
* `git-merge-recursive` strategy, which may produce an artificial common
* ancestor tree when there are multiple ancestors.
*
* For compatibility with git, the repository is put into a merging * For compatibility with git, the repository is put into a merging
* state. Once the commit is done (or if the uses wishes to abort), * state. Once the commit is done (or if the uses wishes to abort),
* you should clear this state by calling * you should clear this state by calling
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment