79 |
79 |
80 Obsolescence markers will be exchanged between repositories that |
80 Obsolescence markers will be exchanged between repositories that |
81 explicitly assert support for the obsolescence feature (this can currently |
81 explicitly assert support for the obsolescence feature (this can currently |
82 only be done via an extension). |
82 only be done via an extension). |
83 |
83 |
84 Instability ========== |
84 Instability |
85 |
85 =========== |
86 (note: the vocabulary is in the process of being updated) |
86 |
87 |
87 Rewriting changesets might introduce instability. |
88 Rewriting changesets might introduce instability (currently 'trouble'). |
|
89 |
88 |
90 There are two main kinds of instability: orphaning and diverging. |
89 There are two main kinds of instability: orphaning and diverging. |
91 |
90 |
92 Orphans are changesets left behind when their ancestors are rewritten, |
91 Orphans are changesets left behind when their ancestors are rewritten. |
93 (currently: 'unstable'). Divergence has two variants: |
92 Divergence has two variants: |
94 |
93 |
95 * Content-divergence occurs when independent rewrites of the same |
94 * Content-divergence occurs when independent rewrites of the same |
96 changesets lead to different results. (currently: 'divergent') |
95 changesets lead to different results. |
97 * Phase-divergence occurs when the old (obsolete) version of a changeset |
96 * Phase-divergence occurs when the old (obsolete) version of a changeset |
98 becomes public. (currently: 'bumped') |
97 becomes public. |
99 |
98 |
100 If it possible to prevent local creation of orphans by using the following |
99 It is possible to prevent local creation of orphans by using the following |
101 config: |
100 config: |
102 |
101 |
103 [experimental] |
102 [experimental] |
104 evolution=createmarkers,allnewcommands,exchange |
103 evolution=createmarkers,allnewcommands,exchange |
105 |
104 |
388 $ hg log |
387 $ hg log |
389 6 feature-B: another feature that rox - test |
388 6 feature-B: another feature that rox - test |
390 4 feature-A: a nifty feature - test |
389 4 feature-A: a nifty feature - test |
391 0 : base - test |
390 0 : base - test |
392 |
391 |
393 phase change turning obsolete changeset public issue a bumped warning |
392 phase change turning obsolete changeset public issues a phase divergence warning |
394 |
393 |
395 $ hg phase --hidden --public 99833d22b0c6 |
394 $ hg phase --hidden --public 99833d22b0c6 |
396 1 new phase-divergent changesets |
395 1 new phase-divergent changesets |
397 |
396 |
398 all solving bumped troubled |
397 all solving phase-divergent |
399 |
398 |
400 $ glog |
399 $ glog |
401 @ 6:47d52a103155@default(draft) another feature that rox |
400 @ 6:47d52a103155@default(draft) another feature that rox |
402 | |
401 | |
403 | o 5:99833d22b0c6@default(public) another feature (child of ba0ec09b1bab) |
402 | o 5:99833d22b0c6@default(public) another feature (child of ba0ec09b1bab) |
407 o 0:e55e0562ee93@default(public) base |
406 o 0:e55e0562ee93@default(public) base |
408 |
407 |
409 $ hg evolve --any --traceback --phase-divergent |
408 $ hg evolve --any --traceback --phase-divergent |
410 recreate:[6] another feature that rox |
409 recreate:[6] another feature that rox |
411 atop:[5] another feature (child of ba0ec09b1bab) |
410 atop:[5] another feature (child of ba0ec09b1bab) |
412 computing new diff |
|
413 committed as aca219761afb |
411 committed as aca219761afb |
414 working directory is now at aca219761afb |
412 working directory is now at aca219761afb |
415 $ glog |
413 $ glog |
416 @ 7:aca219761afb@default(draft) phase-divergent update to 99833d22b0c6: |
414 @ 7:aca219761afb@default(draft) phase-divergent update to 99833d22b0c6: |
417 | |
415 | |
998 | x 6:faafc6cea0ba@default(draft) a1_ |
996 | x 6:faafc6cea0ba@default(draft) a1_ |
999 |/ |
997 |/ |
1000 o 0:07c1c36d9ef0@default(draft) a0 |
998 o 0:07c1c36d9ef0@default(draft) a0 |
1001 |
999 |
1002 |
1000 |
1003 Possibility to select what trouble to solve first, asking for bumped before |
1001 Possibility to select what instability to solve first, asking for |
1004 divergent |
1002 phase-divergent before content-divergent |
1005 $ hg up -r "desc('a1__')" |
1003 $ hg up -r "desc('a1__')" |
1006 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
1004 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
1007 $ hg revert -r d952e93add6f --all |
1005 $ hg revert -r d952e93add6f --all |
1008 reverting a |
1006 reverting a |
1009 $ hg log -G --template '{rev} [{branch}] {desc|firstline}\n' |
1007 $ hg log -G --template '{rev} [{branch}] {desc|firstline}\n' |
1059 o 0 : a0 - test |
1057 o 0 : a0 - test |
1060 |
1058 |
1061 $ hg evolve -r "desc('add new file bumped')" --phase-divergent |
1059 $ hg evolve -r "desc('add new file bumped')" --phase-divergent |
1062 recreate:[11] add new file bumped |
1060 recreate:[11] add new file bumped |
1063 atop:[10] a2 |
1061 atop:[10] a2 |
1064 computing new diff |
|
1065 committed as a8bb31d4b7f2 |
1062 committed as a8bb31d4b7f2 |
1066 working directory is now at a8bb31d4b7f2 |
1063 working directory is now at a8bb31d4b7f2 |
1067 $ hg evolve --any |
1064 $ hg evolve --any |
1068 move:[8] a3 |
1065 move:[8] a3 |
1069 atop:[12] phase-divergent update to d952e93add6f: |
1066 atop:[12] phase-divergent update to d952e93add6f: |
1078 o 9:9f8b83c2e7f3@default(public) a1__ |
1075 o 9:9f8b83c2e7f3@default(public) a1__ |
1079 | |
1076 | |
1080 o 0:07c1c36d9ef0@default(public) a0 |
1077 o 0:07c1c36d9ef0@default(public) a0 |
1081 |
1078 |
1082 |
1079 |
1083 Check that we can resolve troubles in a revset with more than one commit |
1080 Check that we can resolve instabilities in a revset with more than one commit |
1084 $ hg up b88539ad24d7 -C |
1081 $ hg up b88539ad24d7 -C |
1085 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
1082 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
1086 $ mkcommit gg |
1083 $ mkcommit gg |
1087 $ hg up b88539ad24d7 |
1084 $ hg up b88539ad24d7 |
1088 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
1085 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |