/* Void Main's man pages */
{ phpMan } else { main(); }
GIT-CHERRY(1) Git Manual GIT-CHERRY(1)
NAME
git-cherry - Find commits not merged upstream
SYNOPSIS
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 commits are compared with their patch id, obtained from the git patch-id program.
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
git-patch-id(1)
AUTHOR
Written by Junio C Hamano <gitsterATpobox.com[1]>
DOCUMENTATION
Documentation by Junio C Hamano and the git-list <gitATvger.org[2]>.
GIT
Part of the git(1) suite
NOTES
1. gitsterATpobox.com
mailto:gitsterATpobox.com
2. gitATvger.org
mailto:gitATvger.org
Git 1.7.4.4 04/11/2011 GIT-CHERRY(1)

