Mercurial > hg > easyhg
comparison help/topics/34.txt @ 583:e40e3ebe9f2e fswatcher
Merge from default branch
author | Chris Cannam |
---|---|
date | Mon, 12 Mar 2012 14:58:40 +0000 |
parents | 06507a59f2b8 6ac21e5397aa |
children |
comparison
equal
deleted
inserted
replaced
547:9f91d1b2ed51 | 583:e40e3ebe9f2e |
---|---|
1 {Sharing changes} | 1 {Sharing changes} |
2 | 2 |
3 How do I use the Merge window? | 3 Every time I push some changes, I have to type my password again |
4 | 4 |
5 If you are working with other people on a project, it is likely that | 5 When you push to a remote repository with an "https:" prefix on its |
6 at some point you'll find that more than one of you have edited the | 6 URL, EasyMercurial's password dialog should ask whether you want to |
7 same lines in the same file, in different ways. | 7 remember your login details. |
8 | 8 |
9 When that happens and you try to merge the two versions, EasyMercurial | 9 If you say yes, the details will be stored until EasyMercurial |
10 will pop up a merge window that looks a bit like this. | 10 exits---so you won't have to enter them if you push or pull again |
11 while the present EasyMercurial session is running. Your password will | |
12 be stored, encrypted with a session key, in a file which is deleted | |
13 when EasyMercurial exits. | |
11 | 14 |
12 #merge50 | 15 *If this option does not appear* |
13 | 16 |
14 (This is actually a separate program, not part of EasyMercurial: it's | 17 ... and if you're using OS/X, then you need to install the PyCrypto |
15 a merge tool called kdiff3.) | 18 library before EasyMercurial will be able to store encrypted passwords |
19 for you. | |
16 | 20 |
17 This looks a bit complicated, but it is there to help you pick which | 21 Try running @sudo easy_install pycrypto@ in a terminal window. |
18 of the changes from each of the two "rival" versions of the file you | |
19 want to use in your merged version. | |
20 | 22 |
21 *The top middle one is _your current version_.* That's | 23 *Not using an https repository?* |
22 the one you had before you decided to merge the other version into | |
23 it. | |
24 | 24 |
25 *At top right is _the version you're merging_.* That's the other | 25 If your remote repository uses ssh or some other protocol, then |
26 rival version -- the one that the other person can see in their copy | 26 EasyMercurial won't be able to help. You might consider using ssh |
27 of the repository. | 27 public key authentication and an ssh agent---talk to the admin of your |
28 | 28 remote repository for more details. |
29 *At top left is _the common ancestor_.* That's the version that both | |
30 of you had, before you started editing it in different ways. | |
31 | |
32 *At the bottom is the output.* | |
33 | |
34 Each _conflict_ (a line which you have both changed in different ways) | |
35 is shown with *Merge Conflict* in the output at the bottom. To sort | |
36 out the conflicts and get the right output, you need to go through | |
37 them one by one, for each one pressing the A, B, or C button to say | |
38 whether for this line you want the top-left, top-middle, or top-right | |
39 version to "win". (You can choose more than one, if you want both | |
40 versions of a line to appear.) | |
41 | |
42 Then having resolved a conflict, press the three-arrows-down toolbar | |
43 button to go to the next one -- and when you've done them all, save | |
44 and exit. | |
45 | |
46 The most important thing to remember is that _whatever appears in the | |
47 bottom pane is what you'll get as a result_. | |
48 | |
49 No matter how confusing the process, just remember that if it looks | |
50 correct in the bottom pane, it will be correct when you save and | |
51 exit. You can even edit the file directly in the bottom pane if you | |
52 aren't happy with the way the merge is going. | |
53 | |
54 | |
55 | |
56 |