hash-object: cleanup handling of command line options
[gitweb.git] / Documentation / git-cherry-pick.txt
index bfa950ca19c701bd3837a874bbeeb18b440ed44f..877ab66ef5c032af09ace5597bac64fd7739f468 100644 (file)
@@ -7,7 +7,7 @@ git-cherry-pick - Apply the change introduced by an existing commit
 
 SYNOPSIS
 --------
-'git-cherry-pick' [--edit] [-n] [-r] <commit>
+'git-cherry-pick' [--edit] [-n] [-m parent-number] [-x] <commit>
 
 DESCRIPTION
 -----------
@@ -19,18 +19,37 @@ OPTIONS
 -------
 <commit>::
        Commit to cherry-pick.
+       For a more complete list of ways to spell commits, see
+       "SPECIFYING REVISIONS" section in linkgit:git-rev-parse[1].
 
 -e|--edit::
        With this option, `git-cherry-pick` will let you edit the commit
-       message prior committing.
+       message prior to committing.
 
--r|--replay::
-       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.
+-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::
+       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
@@ -56,5 +75,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
 
 GIT
 ---
-Part of the gitlink:git[7] suite
-
+Part of the linkgit:git[7] suite