# Git Cherry Find commits in your branch that haven't been applied upstream — useful in patch-based workflows to see what still needs to land. ```bash git cherry [-v] [<upstream> [<head> [<limit>]]] ``` Output prefixes: - `-` — commit has an equivalent in upstream (can be dropped on rebase) - `+` — commit not yet in upstream (still needs to go) ## Common Usage ```bash git fetch git cherry -v # compare HEAD to tracked upstream git cherry -v origin/master topic # explicit branches ``` ## With a Limit If your branch is based on local work that isn't in upstream, use `<limit>` to exclude those base commits from the output: ```bash git cherry origin/master topic base ``` ## See Also - [[Interactive Rebase]] — reorder or drop commits before sending upstream