How to List Unpushed Git Commits (Local but Not on Origin)

Better Stack Team
Updated on June 24, 2024

To list the unpushed Git commits (local commits that haven't been pushed to the remote repository), you can use the git log command in conjunction with the --branches, --not, and --remotes options. Here's how:

 
git log --branches --not --remotes

This command shows the commits that are reachable from any local branch (--branches) but not reachable from any remote branch (--remotes), indicating the commits that haven't been pushed to the remote repository.

Note:

  • The -not option negates the commits reachable from remote branches, effectively showing only the unpushed commits.
  • You can further customize the output of git log by using additional options such as -oneline, -graph, or -decorate to display a more compact or visually informative representation of the commit history.
  • If you want to see the unpushed commits for a specific branch, you can specify the branch name instead of using -branches.
Got an article suggestion? Let us know
Licensed under CC-BY-NC-SA

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.