Why do I need hg update after hg pull while in git I’m doing only git pull

The other answers don’t actually answer the question, which is: why don’t Git and Mercurial work the same? Is there a philosophical difference?

In Mercurial, pull is the opposite of push: it syncs the local repo with a remote repo without touching the working copy. So it’s more consistent.

In Git, pull is a fetch plus a merge, or a pull plus an update in Mercurial terms. Usually this is what you want. So it’s more efficient.

The Distributed Version Control University talk has a slide at the 4-minute mark that clearly demonstrates the way Mercurial works. Michael Ernst’s Version control concepts and best practices has a similar diagram (included below):

Distributed version control

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)