Chris@499: Chris@499: Chris@499: Chris@499:
This error indicates that the remote repository has some changes in it Chris@499: that you do not have in your local repository (and that are in Chris@499: branches that you have also changed). Perhaps someone else made these Chris@499: changes and pushed them, or they may have come from you pushing from a Chris@499: different computer.
Chris@499: Chris@499:A good principle is that you should review and test your changes Chris@499: before you push them to another repository. Although (with a Chris@499: distributed version control system) it's generally OK to commit Chris@499: changes locally that don't really work or that aren't complete enough Chris@499: to test, it's a bad idea to push anything that would cause the remote Chris@499: repository to have an untested set of changes in it.
Chris@499: Chris@499:For that reason, if you change some files and someone else changes Chris@499: others and you both push them without knowing about the other one, Chris@499: Mercurial must refuse whichever push happens later – it won't simply Chris@499: merge the changes because the result might not make any sense.
Chris@499: Chris@499:Instead you must pull the other person's changes and merge them Chris@499: locally before you push. Fortunately, this is easy to do.
Chris@499: Chris@499:1. Click Pull on the main toolbar at the top of the EasyMercurial window. Chris@499:
2. Click Merge in the toolbar on the left. Chris@499:
3. Review or test the resulting merged version in your local working folder.
Chris@499: Chris@499:4. Commit the merged version.
Chris@499: Chris@499:5. Push again to the remote repository.
Chris@499: