git-cherry-pick(1)
==================

NAME
----
git-cherry-pick - Apply the change introduced by an existing commit

SYNOPSIS
--------
'git-cherry-pick' [--edit] [-n] [-r] <commit>

DESCRIPTION
-----------
Given one existing commit, apply the change the patch introduces, and record a
new commit that records it.  This requires your working tree to be clean (no
modifications from the HEAD commit).

OPTIONS
-------
<commit>::
	Commit to cherry-pick.

-e|--edit::
	With this option, `git-cherry-pick` will let you edit the commit
	message prior 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.

-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
	to cherry-pick the named commit to your working tree,
	but does not make the commit.  In addition, when this
	option is used, your working tree does not have to match
	the HEAD commit.  The cherry-pick is done against the
	beginning state of your working tree.
+
This is useful when cherry-picking more than one commits'
effect to your working tree in a row.


Author
------
Written by Junio C Hamano <junkio@cox.net>

Documentation
--------------
Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.

GIT
---
Part of the gitlink:git[7] suite

