git-cherry - Find commits not merged upstream
git cherry [-v] [<upstream> [<head> [<limit>]]]
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:
If a <limit> has been given then the commits along the <head> branch up
to and including <limit> are not reported:
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.
Upstream branch to compare against. Defaults to the first tracked
remote branch, if available.
Working branch; defaults to HEAD.
Do not report commits up to (and including) limit.
Written by Junio C Hamano <email@example.com>
Documentation by Junio C Hamano and the git-list
Part of the git(1) suite