annotate docs/evolve-good-practice.rst @ 3843:f0096db2a7b1

evolve: improve error messages when conflicts occur This patch improves the error messages when conflicts occur. First, we drop the line 'evolution failed', that is not the best line we can show and evolution didn't failed, it's just interrupted by the conflicts and when user will run `hg evolve --continue`, things will be fine. I still remember when I first saw 'evolution failed', I got a bit scare as am I in a recoverable position or not. So let's drop this scary line. Second, we replace the error messages to say `resolve conflicts and see help-topic`. The help topic was added recently and documents all the three flags very well. Addition of tests also showed that all the three flags works fine with all the three instability type. So we should advertise them more. Third, we now raise the error with our error message rather than raising MergeFailure and having evolution related text in hint or stderr above. This increase the focus on the error message we want to show. After this patch, I think error messages by evolve in case of conflicts will be same in every case.
author Pulkit Goyal <7895pulkit@gmail.com>
date Tue, 12 Jun 2018 19:00:12 +0530
parents 016ffd74026f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
519
9825c7da5b54 ensure all file have a copyright notice
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 357
diff changeset
1 .. Copyright 2011 Pierre-Yves David <pierre-yves.david@ens-lyon.org>
9825c7da5b54 ensure all file have a copyright notice
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 357
diff changeset
2 .. Logilab SA <contact@logilab.fr>
527
b81193ef3488 docs: add missing blank line after Copyright notice
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 519
diff changeset
3
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
4 -----------------------------------------
655
dd5765ae91c3 doc: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 527
diff changeset
5 Good practice for (early) users of evolve
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
6 -----------------------------------------
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
7
357
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
8 Avoid unstability
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 655
diff changeset
9 -----------------
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
10
357
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
11 The less unstability you have the less you need to resolve.
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
12
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
13 Evolve is not yet able to detect and solve every situation. And your mind is
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
14 not ready neither.
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
15
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
16 Branch as much as possible
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 655
diff changeset
17 --------------------------
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
18
655
dd5765ae91c3 doc: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 527
diff changeset
19 This is not MQ; you are not constrained to linear history.
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
20
357
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
21 Making a branch per independent branch will help you avoid unstability
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
22 and conflict.
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
23
655
dd5765ae91c3 doc: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 527
diff changeset
24 Rewrite your changes only
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 655
diff changeset
25 -------------------------
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
26
357
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
27 There is no descent conflict detection and handling right now.
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
28 Rewriting other people's changesets guarantees that you will get
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
29 conflicts. Communicate with your fellow developers before trying to
1655
016ffd74026f Spelling: practice
timeless@gmail.com
parents: 1287
diff changeset
30 touch other people's work (which is a good practice in any case).
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
31
655
dd5765ae91c3 doc: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 527
diff changeset
32 Using multiple branches will help you to achieve this goal.
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
33
655
dd5765ae91c3 doc: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 527
diff changeset
34 Prefer pushing unstability to touching other people changesets
dd5765ae91c3 doc: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 527
diff changeset
35 --------------------------------------------------------------
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
36
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
37
357
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
38 If you have children changesets from other people that you don't really care
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
39 about, prefer not altering them to risking a conflict by stabilizing them.
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
40
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
41
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
42 Do not get too confident
1287
6f2c1574eda8 docs: fix slightly unconventional .rst markup
Greg Ward <greg@gerg.ca>
parents: 655
diff changeset
43 ------------------------
241
2f2681ed8f16 [doc] add good practice section
Pierre-Yves.David@ens-lyon.org
parents:
diff changeset
44
357
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
45 This is an experimental extension and a complex concept. This is beautiful,
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
46 powerful and robust on paper, but the tool and your mind may not be prepared for
b398e9c2dbd1 doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 241
diff changeset
47 all situations yet.