annotate help/topics/33.txt @ 499:b3309be1640f

More help. This I think will do for 1.0.
author Chris Cannam
date Mon, 22 Aug 2011 21:31:55 +0100
parents
children 2d59eda59895
rev   line source
Chris@499 1 {Sharing changes}
Chris@499 2
Chris@499 3 I tried to push my changes, but it told me "the remote repository may have been changed by someone else" and refused
Chris@499 4
Chris@499 5 This error indicates that the remote repository has some changes in it
Chris@499 6 that you do not have in your local repository (and that are in
Chris@499 7 branches that you have also changed). Perhaps someone else made these
Chris@499 8 changes and pushed them, or they may have come from you pushing from a
Chris@499 9 different computer.
Chris@499 10
Chris@499 11 A good principle is that you should review and test your changes
Chris@499 12 before you push them to another repository. Although (with a
Chris@499 13 distributed version control system) it's generally OK to commit
Chris@499 14 changes locally that don't really work or that aren't complete enough
Chris@499 15 to test, it's a bad idea to push anything that would cause the remote
Chris@499 16 repository to have an untested set of changes in it.
Chris@499 17
Chris@499 18 For that reason, if you change some files and someone else changes
Chris@499 19 others and you both push them without knowing about the other one,
Chris@499 20 Mercurial must refuse whichever push happens later -- it won't simply
Chris@499 21 merge the changes because the result might not make any sense.
Chris@499 22
Chris@499 23 Instead you must pull the other person's changes and merge them
Chris@499 24 locally before you push. Fortunately, this is easy to do.
Chris@499 25
Chris@499 26 *1. Click Pull on the main toolbar at the top of the EasyMercurial window.*
Chris@499 27
Chris@499 28 * You should see that some changes are pulled and added to your local repository. This will usually lead to a forked graph in the History pane, as your changes and the other user's were both started from the same parent at the same time.
Chris@499 29
Chris@499 30 *2. Click Merge in the toolbar on the left.*
Chris@499 31
Chris@499 32 * Any changes that affect different files, or that affect different parts of the same file, will be merged automatically. For changes that affect the same parts of the same file, you will be asked to choose which change to include in the merged copy.
Chris@499 33
Chris@499 34 *3. Review or test the resulting merged version in your local working folder.*
Chris@499 35
Chris@499 36 *4. Commit the merged version.*
Chris@499 37
Chris@499 38 *5. Push again to the remote repository.*
Chris@499 39