Show Changesets Not Yet Pushed

posted by Ryan Wilcox on October 27, 2009

Whenever you commit something to Mercurial that changeset normally stays on your machine until you explicitly push it on another server. Unlike a centralized system like Subversion, the push is a separate step, but sometimes you’ll want to know exactly what changesets you’re pushing before you send all your changes to the world.

Mercurial has a feature that can tell you this: the outgoing command. Example:

$ hg outgoing default
comparing with ssh://hg@bitbucket.org/rwilcox/somehgrepo/
searching for changes
changeset:   110:bf9aaaf1ebf3
user:        Ryan Wilcox <rwilcox@wilcoxd.com>
date:        Sat Oct 24 09:36:59 2009 -0400
summary:     A change

changeset:   111:223342c3061f
user:        Ryan Wilcox <rwilcox@wilcoxd.com>
date:        Sat Oct 24 20:52:12 2009 -0400
summary:     another change

changeset:   112:e13f56188516
user:        Ryan Wilcox <rwilcox@wilcoxd.com>
date:        Sat Oct 24 21:06:45 2009 -0400
summary:     last change

The parameter to passed to the outgoing command is the repository path you want to examine. The “default” path is assumed if you don’t specify one.

Show what changesets you’ve created since last time you pushed.