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

NAME
----
git-cherry - Find commits not merged upstream

SYNOPSIS
--------
[verse]
'git cherry' [-v] [<upstream> [<head> [<limit>]]]

DESCRIPTION
-----------
The changeset (or "diff") of each commit between the fork-point and <head>
is compared against each commit between the fork-point and <upstream>.
The diffs are compared after removing any whitespace and line numbers.

Every commit that doesn't exist in the <upstream> branch
has its id (sha1) reported, prefixed by a symbol.  The ones that have
equivalent change already
in the <upstream> branch are prefixed with a minus (-) sign, and those
that only exist in the <head> branch are prefixed with a plus (+) symbol:

               __*__*__*__*__> <upstream>
              /
    fork-point
              \__+__+__-__+__+__-__+__> <head>


If a <limit> has been given then the commits along the <head> branch up
to and including <limit> are not reported:

               __*__*__*__*__> <upstream>
              /
    fork-point
              \__*__*__<limit>__-__+__> <head>


Because 'git cherry' compares the changeset rather than the commit id
(sha1), you can use 'git cherry' to find out if a commit you made locally
has been applied <upstream> under a different commit id.  For example,
this will happen if you're feeding patches <upstream> via email rather
than pushing or pulling commits directly.


OPTIONS
-------
-v::
	Verbose.

<upstream>::
	Upstream branch to compare against.
	Defaults to the first tracked remote branch, if available.

<head>::
	Working branch; defaults to HEAD.

<limit>::
	Do not report commits up to (and including) limit.

SEE ALSO
--------
linkgit:git-patch-id[1]

GIT
---
Part of the linkgit:git[1] suite
