Say you're working on a branch and comitting from two machines. Your regular work:
hg commit -m "foobar"
hg push -r tip
Now, two cases:
- no merge or nothing needed.
// all is ok and push is fine
- merge or rebase is needed (someone else committed on the same branch)
i.e. hg push returned a "pushing a new head something something". so now you either merge or rebase your changes. I prefer rebase.
hg pull -b . --rebase
hg push -r tip
// done!