There are a couple approaches to consider. What I do is set up a central repo on Bitbucket, "hg push" changes from my PC to Bitbucket and "hg pull" changes from Bitbucket to my production server.
You can do the updates manually but I like using Fabric so you don't have to SSH in to your server all the time.

