Merge branch 'sb/clean'
[gitweb.git] / Documentation / git-cherry-pick.txt
index 26e04677972f410cbec93c72ba2210c28d1f39bc..937c4a79262d44583849fc81319187fa7fb65579 100644 (file)
@@ -3,11 +3,11 @@ git-cherry-pick(1)
 
 NAME
 ----
-git-cherry-pick - Apply the change introduced by an existing commit.
+git-cherry-pick - Apply the change introduced by an existing commit
 
 SYNOPSIS
 --------
-'git-cherry-pick' [-n] [-r] <commit>
+'git-cherry-pick' [--edit] [-n] [-m parent-number] [-x] <commit>
 
 DESCRIPTION
 -----------
@@ -19,16 +19,39 @@ OPTIONS
 -------
 <commit>::
        Commit to cherry-pick.
+       For a more complete list of ways to spell commits, see
+       "SPECIFYING REVISIONS" section in gitlink:git-rev-parse[1].
+
+-e|--edit::
+       With this option, `git-cherry-pick` will let you edit the commit
+       message prior committing.
+
+-x::
+       When recording the commit, append to the original commit
+       message a note that indicates which commit this change
+       was cherry-picked from.  Append the note only for cherry
+       picks without conflicts.  Do not use this option if
+       you are cherry-picking from your private branch because
+       the information is useless to the recipient.  If on the
+       other hand you are cherry-picking between two publicly
+       visible branches (e.g. backporting a fix to a
+       maintenance branch for an older release from a
+       development branch), adding this information can be
+       useful.
 
 -r::
-       Usually the command appends which commit was
-       cherry-picked after the original commit message when
-       making a commit.  This option, '--replay', causes it to
-       use the original commit message intact.  This is useful
-       when you are reordering the patches in your private tree
-       before publishing, and is used by 'git rebase'.
-
--n::
+       It used to be that the command defaulted to do `-x`
+       described above, and `-r` was to disable it.  Now the
+       default is not to do `-x` so this option is a no-op.
+
+-m parent-number|--mainline parent-number::
+       Usually you cannot revert a merge because you do not know which
+       side of the merge should be considered the mainline.  This
+       option specifies the parent number (starting from 1) of
+       the mainline and allows cherry-pick to replay the change
+       relative to the specified parent.
+
+-n|--no-commit::
        Usually the command automatically creates a commit with
        a commit log message stating which commit was
        cherry-picked.  This flag applies the change necessary
@@ -53,4 +76,3 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
 GIT
 ---
 Part of the gitlink:git[7] suite
-