X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;ds=sidebyside;f=Documentation%2Fgit-merge.txt;h=c136b1069230af55b62ba95a1b40bdcc019b7b42;hb=31a3c6bb45aa61e45f1663871620eaf742f0abbb;hp=bca4212e565c95f79a76a14cc4444e72e472a22c;hpb=e2b7eaf0ca3897940961d23392d4ff718867ea9f;p=git.git diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt index bca4212e5..c136b1069 100644 --- a/Documentation/git-merge.txt +++ b/Documentation/git-merge.txt @@ -11,26 +11,27 @@ SYNOPSIS [verse] 'git-merge' [-n] [--summary] [--no-commit] [--squash] [-s ]... [-m ] ... +'git-merge' HEAD ... DESCRIPTION ----------- This is the top-level interface to the merge machinery which drives multiple merge strategy scripts. +The second syntax ( `HEAD` ) is supported for +historical reasons. Do not use it from the command line or in +new scripts. It is the same as `git merge -m `. + OPTIONS ------- include::merge-options.txt[] -:: +-m :: The commit message to be used for the merge commit (in case it is created). The `git-fmt-merge-msg` script can be used to give a good default for automated `git-merge` invocations. -:: - Our branch head commit. This has to be `HEAD`, so new - syntax does not require it - :: Other branch head merged into our branch. You need at least one . Specifying more than one @@ -41,7 +42,7 @@ include::merge-strategies.txt[] If you tried a merge which resulted in a complex conflicts and would want to start over, you can recover with -gitlink:git-reset[1]. +linkgit:git-reset[1]. CONFIGURATION ------------- @@ -67,20 +68,21 @@ HOW MERGE WORKS --------------- A merge is always between the current `HEAD` and one or more -remote branch heads, and the index file must exactly match the +commits (usually, branch head or tag), and the index file must +exactly match the tree of `HEAD` commit (i.e. the contents of the last commit) when it happens. In other words, `git-diff --cached HEAD` must report no changes. [NOTE] -This is a bit of lie. In certain special cases, your index are -allowed to be different from the tree of `HEAD` commit. The most +This is a bit of a lie. In certain special cases, your index is +allowed to be different from the tree of the `HEAD` commit. The most notable case is when your `HEAD` commit is already ahead of what is being merged, in which case your index can have arbitrary -difference from your `HEAD` commit. Otherwise, your index entries -are allowed have differences from your `HEAD` commit that match -the result of trivial merge (e.g. you received the same patch -from external source to produce the same result as what you are +differences from your `HEAD` commit. Also, your index entries +may have differences from your `HEAD` commit that match +the result of a trivial merge (e.g. you received the same patch +from an external source to produce the same result as what you are merging). For example, if a path did not exist in the common ancestor and your head commit but exists in the tree you are merging into your repository, and if you already happen to have @@ -162,7 +164,8 @@ After seeing a conflict, you can do two things: SEE ALSO -------- -gitlink:git-fmt-merge-msg[1], gitlink:git-pull[1] +linkgit:git-fmt-merge-msg[1], linkgit:git-pull[1], +linkgit:gitattributes[5] Author @@ -176,4 +179,4 @@ Documentation by Junio C Hamano and the git-list . GIT --- -Part of the gitlink:git[7] suite +Part of the linkgit:git[7] suite