Mercurial > evolve
changeset 5730:a119432bafc1
divergence-resolution: deal with simple "just one moved case" earlier
While deciding the resolution parent for content-divergence resolution, now we
use 3-way merge logic to check, if only one of them was moved from its original
position by comparing the parent of both divergent cset with parent of base.
author | Sushil khanchi <sushilkhanchi97@gmail.com> |
---|---|
date | Fri, 22 Jan 2021 05:37:43 +0100 |
parents | 3a1e07c27e4a |
children | 7daa67934798 |
files | CHANGELOG hgext3rd/evolve/evolvecmd.py tests/test-evolve-content-divergent-corner-cases.t tests/test-evolve-content-divergent-interrupted.t tests/test-evolve-content-divergent-relocation.t |
diffstat | 5 files changed, 259 insertions(+), 253 deletions(-) [+] |
line wrap: on
line diff
--- a/CHANGELOG Fri Jan 22 04:54:51 2021 +0100 +++ b/CHANGELOG Fri Jan 22 05:37:43 2021 +0100 @@ -5,6 +5,7 @@ --------------------- * evolve: remove spurious "working directory is now at ..." messages + * evolve: improve resolution of some case of parent divergence topic:
--- a/hgext3rd/evolve/evolvecmd.py Fri Jan 22 04:54:51 2021 +0100 +++ b/hgext3rd/evolve/evolvecmd.py Fri Jan 22 05:37:43 2021 +0100 @@ -316,6 +316,7 @@ otherp1 = succsotherp1 = other.p1().rev() divp1 = succsdivp1 = divergent.p1().rev() + basep1 = base.p1().rev() # finding single successors of divp1 and otherp1 try: @@ -373,6 +374,12 @@ elif divergent == other.p1(): # both are in parent-child relation pass + elif basep1 in (divp1, otherp1): + # only one side moved, set parent of moved one as resolution parent + if basep1 == divp1: + resolutionparent = succsotherp1 + else: + pass else: # the nullrev has to be handled specially because -1 is overloaded to both # mean nullrev (this meaning is used for the result of changectx.rev(), as
--- a/tests/test-evolve-content-divergent-corner-cases.t Fri Jan 22 04:54:51 2021 +0100 +++ b/tests/test-evolve-content-divergent-corner-cases.t Fri Jan 22 05:37:43 2021 +0100 @@ -351,8 +351,6 @@ So we can do a 3 way merges merges. on one side we have changes (the parent change) and on the other one we don't, we should apply the change. -BROKEN: Currently, the logic is broken and pick the wrong parent - $ hg evolve --list --rev 'contentdivergent()' ff6f7cd76a7c: updated e orphan: 9150fe93bec6 (obsolete parent) @@ -384,16 +382,15 @@ merge:[5] updated e with: [6] updated e base: [4] added e - rebasing "divergent" content-divergent changeset ff6f7cd76a7c on 155349b645be - rebasing "other" content-divergent changeset de4ea3103326 on 155349b645be + rebasing "divergent" content-divergent changeset ff6f7cd76a7c on 5f6d8a4bf34a file 'd' was deleted in local but was modified in other. You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved. What do you want to do? c 0 files updated, 1 files merged, 0 files removed, 0 files unresolved - working directory is now at 51ee71efed61 + working directory is now at 050a5d9ba60d $ hg glog -l1 - @ 9:51ee71efed61 updated e + @ 8:050a5d9ba60d updated e | () [default] draft ~ @@ -401,21 +398,17 @@ 8d71eadcc9dfb21a924e75a5796c2f011bdc55a4 ff6f7cd76a7c97d938e8fe87f0fc816b66929435 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '9', 'operation': 'amend', 'user': 'test'} 8d71eadcc9dfb21a924e75a5796c2f011bdc55a4 de4ea3103326293994c634101e780724346ee89f 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '13', 'operation': 'prune', 'user': 'test'} 9150fe93bec603cd88d05cda9f6ff13420cb53e9 0 {155349b645beebee15325a9a22dd0c9ef8fbbbd3} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'} - ff6f7cd76a7c97d938e8fe87f0fc816b66929435 0ceb21ca2557a61433f097e4d64024e37cae2c10 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - de4ea3103326293994c634101e780724346ee89f a2465d1d56d1aee8ed90d2292978456d2be6f7b9 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 0ceb21ca2557a61433f097e4d64024e37cae2c10 51ee71efed6170064a7155a9a35e56af0292a203 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} - a2465d1d56d1aee8ed90d2292978456d2be6f7b9 51ee71efed6170064a7155a9a35e56af0292a203 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} + ff6f7cd76a7c97d938e8fe87f0fc816b66929435 8883bfaa2d02c8c54b6278551324187019862599 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + 8883bfaa2d02c8c54b6278551324187019862599 050a5d9ba60d423b4401803509457515297edcf4 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} + de4ea3103326293994c634101e780724346ee89f 050a5d9ba60d423b4401803509457515297edcf4 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} $ hg obslog --all - @ 51ee71efed61 (9) updated e - |\ amended(content) from 0ceb21ca2557 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) - | | rewritten from a2465d1d56d1 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + @ 050a5d9ba60d (8) updated e + |\ amended(content) from 8883bfaa2d02 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + | | rewritten from de4ea3103326 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - x | 0ceb21ca2557 (7) updated e + x | 8883bfaa2d02 (7) updated e | | rebased(parent) from ff6f7cd76a7c using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - | x a2465d1d56d1 (8) updated e - | | rebased(parent) from de4ea3103326 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) - | | | x de4ea3103326 (6) updated e | | rewritten(description, parent, content) from 8d71eadcc9df using prune by test (Thu Jan 01 00:00:00 1970 +0000) | |
--- a/tests/test-evolve-content-divergent-interrupted.t Fri Jan 22 04:54:51 2021 +0100 +++ b/tests/test-evolve-content-divergent-interrupted.t Fri Jan 22 05:37:43 2021 +0100 @@ -307,9 +307,11 @@ merge:[6] added d with: [7] added d base: [4] added d - rebasing "divergent" content-divergent changeset 69bdd23a9b0d on ca1b80f7960a - merging c - warning: conflicts while merging c! (edit, then use 'hg resolve --mark') + rebasing "other" content-divergent changeset e49523854bc8 on c7586e2a9264 + file 'c' was deleted in other but was modified in local. + You can use (c)hanged version, (d)elete, or leave (u)nresolved. + What do you want to do? u + 1 files updated, 0 files merged, 0 files removed, 1 files unresolved unresolved merge conflicts (see 'hg help evolve.interrupted') [240] @@ -360,7 +362,7 @@ merge:[7] added d with: [8] added d base: [4] added d - rebasing "other" content-divergent changeset 33e4442acf98 on ca1b80f7960a + rebasing "divergent" content-divergent changeset e49523854bc8 on c7586e2a9264 merging d warning: conflicts while merging d! (edit, then use 'hg resolve --mark') 0 files updated, 0 files merged, 0 files removed, 1 files unresolved @@ -505,7 +507,7 @@ merge:[5] added d with: [7] added d base: [4] added d - rebasing "other" content-divergent changeset 517d4375cb72 on ca1b80f7960a + rebasing "divergent" content-divergent changeset e49523854bc8 on c7586e2a9264 merging d warning: conflicts while merging d! (edit, then use 'hg resolve --mark') 0 files updated, 0 files merged, 0 files removed, 1 files unresolved @@ -515,12 +517,12 @@ $ hg evolve --stop stopped the interrupted evolve - working directory is now at 517d4375cb72 + working directory is now at e49523854bc8 $ hg glog - @ 7:517d4375cb72 added d + * 7:517d4375cb72 added d | () draft - | * 5:e49523854bc8 added d + | @ 5:e49523854bc8 added d | | () draft | o 3:ca1b80f7960a added c | | () draft @@ -537,15 +539,16 @@ $ echo babar > c $ hg add c + c already tracked! $ hg amend $ hg glog - @ 8:8fd1c4bd144c added d + @ 8:2d664a4ab749 added d | () draft - | * 5:e49523854bc8 added d + | * 7:517d4375cb72 added d | | () draft - | o 3:ca1b80f7960a added c + o | 3:ca1b80f7960a added c | | () draft - | o 2:b1661037fa25 added b + o | 2:b1661037fa25 added b |/ () draft o 1:c7586e2a9264 added a | () draft @@ -553,45 +556,49 @@ () draft $ hg evolve --content-divergent - merge:[5] added d + merge:[7] added d with: [8] added d base: [4] added d - rebasing "other" content-divergent changeset 8fd1c4bd144c on ca1b80f7960a - merging c - warning: conflicts while merging c! (edit, then use 'hg resolve --mark') + rebasing "other" content-divergent changeset 2d664a4ab749 on c7586e2a9264 + file 'c' was deleted in local but was modified in other. + You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved. + What do you want to do? u + merging d + warning: conflicts while merging d! (edit, then use 'hg resolve --mark') + 0 files updated, 0 files merged, 0 files removed, 2 files unresolved unresolved merge conflicts (see 'hg help evolve.interrupted') [240] $ hg diff - diff -r ca1b80f7960a c - --- a/c Thu Jan 01 00:00:00 1970 +0000 + diff -r 517d4375cb72 c + --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/c Thu Jan 01 00:00:00 1970 +0000 + @@ -0,0 +1,1 @@ + +babar + diff -r 517d4375cb72 d + --- a/d Thu Jan 01 00:00:00 1970 +0000 + +++ b/d Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +1,5 @@ - +<<<<<<< destination: ca1b80f7960a - test: added c - foo + +<<<<<<< local: 517d4375cb72 - test: added d + foobar +======= - +babar - +>>>>>>> evolving: 8fd1c4bd144c - test: added d - diff -r ca1b80f7960a d - --- /dev/null Thu Jan 01 00:00:00 1970 +0000 - +++ b/d Thu Jan 01 00:00:00 1970 +0000 - @@ -0,0 +1,1 @@ - +foobar + +bar + +>>>>>>> other: e315463d94bd - test: added d $ hg evolve --stop stopped the interrupted evolve - working directory is now at ca1b80f7960a + working directory is now at 2d664a4ab749 XXX: we should have preserved the wdir to be at rev 8 $ hg glog - * 8:8fd1c4bd144c added d + @ 8:2d664a4ab749 added d | () draft - | * 5:e49523854bc8 added d + | * 7:517d4375cb72 added d | | () draft - | @ 3:ca1b80f7960a added c + o | 3:ca1b80f7960a added c | | () draft - | o 2:b1661037fa25 added b + o | 2:b1661037fa25 added b |/ () draft o 1:c7586e2a9264 added a | () draft
--- a/tests/test-evolve-content-divergent-relocation.t Fri Jan 22 04:54:51 2021 +0100 +++ b/tests/test-evolve-content-divergent-relocation.t Fri Jan 22 05:37:43 2021 +0100 @@ -71,8 +71,6 @@ So we can do a 3 way merges merges. on one side we have changes (the parent change) and on the other one we don't, we should apply the change. -BROKEN: Currently, the logic is broken and pick the wrong parent - $ hg evolve --list --rev 'contentdivergent()' 7ed0642d644b: added b content-divergent: da4b96f4a8d6 (draft) (precursor b1661037fa25) @@ -97,21 +95,21 @@ merge:[5] added b with: [6] added b base: [2] added b - rebasing "other" content-divergent changeset da4b96f4a8d6 on c7586e2a9264 + rebasing "divergent" content-divergent changeset 7ed0642d644b on 8fa14d15e168 0 files updated, 0 files merged, 0 files removed, 0 files unresolved - working directory is now at e7fdc662d630 + working directory is now at c5862ade0278 $ hg glog - @ 8:e7fdc662d630 added b + @ 8:c5862ade0278 added b | () [default] draft | * 4:c41c793e0ef1 added d | | () [default] draft | * 3:ca1b80f7960a added c | | () [default] draft | x 2:b1661037fa25 added b + | | () [default] draft + | o 1:c7586e2a9264 added a |/ () [default] draft - o 1:c7586e2a9264 added a - | () [default] draft o 0:8fa14d15e168 added hgignore () [default] draft @@ -120,11 +118,11 @@ # User test # Date 0 0 # Thu Jan 01 00:00:00 1970 +0000 - # Node ID e7fdc662d6305fee2908c3f1630e0b20d6f4689a - # Parent c7586e2a92645e473645847a7b69a6dc52be4276 + # Node ID c5862ade02783a99f46082f4f0483c449fc4c3f2 + # Parent 8fa14d15e1684a9720b1b065aba9d5ea51024cb2 added b - diff -r c7586e2a9264 -r e7fdc662d630 b + diff -r 8fa14d15e168 -r c5862ade0278 b --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/b Thu Jan 01 00:00:00 1970 +0000 @@ -0,0 +1,1 @@ @@ -133,22 +131,22 @@ $ hg debugobsolete b1661037fa25511d0b7ccddf405e336f9d7d3424 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} b1661037fa25511d0b7ccddf405e336f9d7d3424 da4b96f4a8d610a85b225583138f681d67e275dd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} - da4b96f4a8d610a85b225583138f681d67e275dd 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 e7fdc662d6305fee2908c3f1630e0b20d6f4689a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} - 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 e7fdc662d6305fee2908c3f1630e0b20d6f4689a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} + 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 2ec52f302b0f0ef30979124e92f1d9f2a26cedf8 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + 2ec52f302b0f0ef30979124e92f1d9f2a26cedf8 c5862ade02783a99f46082f4f0483c449fc4c3f2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} + da4b96f4a8d610a85b225583138f681d67e275dd c5862ade02783a99f46082f4f0483c449fc4c3f2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} $ hg obslog --all - @ e7fdc662d630 (8) added b - |\ amended(content) from 11f849d7159f using evolve by test (Thu Jan 01 00:00:00 1970 +0000) - | | rewritten from 7ed0642d644b using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + @ c5862ade0278 (8) added b + |\ rewritten from 2ec52f302b0f using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + | | amended(content) from da4b96f4a8d6 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - x | 11f849d7159f (7) added b - | | rebased(parent) from da4b96f4a8d6 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + x | 2ec52f302b0f (7) added b + | | rebased(parent) from 7ed0642d644b using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - | x 7ed0642d644b (5) added b - | | amended(content) from b1661037fa25 using amend by test (Thu Jan 01 00:00:00 1970 +0000) + | x da4b96f4a8d6 (6) added b + | | rebased(parent) from b1661037fa25 using rebase by test (Thu Jan 01 00:00:00 1970 +0000) | | - x | da4b96f4a8d6 (6) added b - |/ rebased(parent) from b1661037fa25 using rebase by test (Thu Jan 01 00:00:00 1970 +0000) + x | 7ed0642d644b (5) added b + |/ amended(content) from b1661037fa25 using amend by test (Thu Jan 01 00:00:00 1970 +0000) | x b1661037fa25 (2) added b @@ -160,14 +158,14 @@ atop:[8] added b move:[4] added d $ hg glog - o 10:be5a8b9faa8a added d + o 10:25cb1649b463 added d | () [default] draft - o 9:e2ce33033e42 added c + o 9:81ead2f9fc61 added c | () [default] draft - @ 8:e7fdc662d630 added b + @ 8:c5862ade0278 added b | () [default] draft - o 1:c7586e2a9264 added a - | () [default] draft + | o 1:c7586e2a9264 added a + |/ () [default] draft o 0:8fa14d15e168 added hgignore () [default] draft @@ -176,7 +174,7 @@ $ echo x > x $ hg ci -Aqm "added x" $ hg glog -r . - @ 11:801b5920c7ea added x + @ 11:f220d694b3a6 added x | () [default] draft ~ @@ -188,27 +186,27 @@ $ hg up 'predecessors(.)' --hidden 1 files updated, 0 files merged, 0 files removed, 0 files unresolved - updated to hidden changeset 801b5920c7ea - (hidden revision '801b5920c7ea' was rewritten as: 5cf74a13db18) - working directory parent is obsolete! (801b5920c7ea) - (use 'hg evolve' to update to its successor: 5cf74a13db18) + updated to hidden changeset f220d694b3a6 + (hidden revision 'f220d694b3a6' was rewritten as: 91939f44a1fe) + working directory parent is obsolete! (f220d694b3a6) + (use 'hg evolve' to update to its successor: 91939f44a1fe) $ hg rebase -r . -d 'desc("added d")' --config experimental.evolution.allowdivergence=True - rebasing 11:801b5920c7ea "added x" + rebasing 11:f220d694b3a6 "added x" 2 new content-divergent changesets $ hg glog - @ 13:45e15d6e88f5 added x + @ 13:7af6be6736c0 added x | () [default] draft - | * 12:5cf74a13db18 added foo to x + | * 12:91939f44a1fe added foo to x | | () [bar] draft - o | 10:be5a8b9faa8a added d + o | 10:25cb1649b463 added d | | () [default] draft - o | 9:e2ce33033e42 added c + o | 9:81ead2f9fc61 added c |/ () [default] draft - o 8:e7fdc662d630 added b + o 8:c5862ade0278 added b | () [default] draft - o 1:c7586e2a9264 added a - | () [default] draft + | o 1:c7586e2a9264 added a + |/ () [default] draft o 0:8fa14d15e168 added hgignore () [default] draft @@ -216,9 +214,9 @@ merge:[12] added foo to x with: [13] added x base: [11] added x - rebasing "divergent" content-divergent changeset 5cf74a13db18 on be5a8b9faa8a + rebasing "divergent" content-divergent changeset 91939f44a1fe on 25cb1649b463 0 files updated, 0 files merged, 0 files removed, 0 files unresolved - working directory is now at 618f8bd245a8 + working directory is now at 3c4c7420a968 $ hg exp # HG changeset patch @@ -226,11 +224,11 @@ # Date 0 0 # Thu Jan 01 00:00:00 1970 +0000 # Branch bar - # Node ID 618f8bd245a8d1892954eb49a88a6ec5e500a5b5 - # Parent be5a8b9faa8af54f115aa168a2c8564acb40c37d + # Node ID 3c4c7420a968a3f76d61fa16c3af9abe115f07b6 + # Parent 25cb1649b46389f8e6e77c3796f01b37996b8fcd added foo to x - diff -r be5a8b9faa8a -r 618f8bd245a8 x + diff -r 25cb1649b463 -r 3c4c7420a968 x --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/x Thu Jan 01 00:00:00 1970 +0000 @@ -0,0 +1,1 @@ @@ -239,47 +237,47 @@ The above `hg exp` and the following log call demonstrates that message, content and branch change is preserved in case of relocation $ hg glog - @ 15:618f8bd245a8 added foo to x + @ 15:3c4c7420a968 added foo to x | () [bar] draft - o 10:be5a8b9faa8a added d + o 10:25cb1649b463 added d | () [default] draft - o 9:e2ce33033e42 added c + o 9:81ead2f9fc61 added c | () [default] draft - o 8:e7fdc662d630 added b + o 8:c5862ade0278 added b | () [default] draft - o 1:c7586e2a9264 added a - | () [default] draft + | o 1:c7586e2a9264 added a + |/ () [default] draft o 0:8fa14d15e168 added hgignore () [default] draft $ hg debugobsolete b1661037fa25511d0b7ccddf405e336f9d7d3424 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} b1661037fa25511d0b7ccddf405e336f9d7d3424 da4b96f4a8d610a85b225583138f681d67e275dd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} - da4b96f4a8d610a85b225583138f681d67e275dd 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 e7fdc662d6305fee2908c3f1630e0b20d6f4689a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} - 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 e7fdc662d6305fee2908c3f1630e0b20d6f4689a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} - ca1b80f7960aae2306287bab52b4090c59af8c29 e2ce33033e42db2e61a5f71c6dfb52a33efeaf6a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - c41c793e0ef1ddb463e85ea9491e377d01127ba2 be5a8b9faa8af54f115aa168a2c8564acb40c37d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 801b5920c7ea8d4ebdbc9cfc1e79e665dea2f211 5cf74a13db180e33dc2df8cd2aa70b21252a2a64 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'amend', 'user': 'test'} - 801b5920c7ea8d4ebdbc9cfc1e79e665dea2f211 45e15d6e88f5bd23ba360dff0c7591eca2d99f43 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} - 5cf74a13db180e33dc2df8cd2aa70b21252a2a64 911c21adca136894a2b35f0a58fae7ee94fa5e61 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 911c21adca136894a2b35f0a58fae7ee94fa5e61 618f8bd245a8d1892954eb49a88a6ec5e500a5b5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} - 45e15d6e88f5bd23ba360dff0c7591eca2d99f43 618f8bd245a8d1892954eb49a88a6ec5e500a5b5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'evolve', 'user': 'test'} + 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 2ec52f302b0f0ef30979124e92f1d9f2a26cedf8 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + 2ec52f302b0f0ef30979124e92f1d9f2a26cedf8 c5862ade02783a99f46082f4f0483c449fc4c3f2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} + da4b96f4a8d610a85b225583138f681d67e275dd c5862ade02783a99f46082f4f0483c449fc4c3f2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} + ca1b80f7960aae2306287bab52b4090c59af8c29 81ead2f9fc6156de69d12b7b5df71c34ab8b9c10 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + c41c793e0ef1ddb463e85ea9491e377d01127ba2 25cb1649b46389f8e6e77c3796f01b37996b8fcd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + f220d694b3a605e236b4b34ef97d3cc6959efb89 91939f44a1fe6d865ec791122014971dfff75129 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'amend', 'user': 'test'} + f220d694b3a605e236b4b34ef97d3cc6959efb89 7af6be6736c0aebd226820373190e636fe9f16e9 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} + 91939f44a1fe6d865ec791122014971dfff75129 c38f731f5ae01e417ceeea09f046febf4536d356 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + c38f731f5ae01e417ceeea09f046febf4536d356 3c4c7420a968a3f76d61fa16c3af9abe115f07b6 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} + 7af6be6736c0aebd226820373190e636fe9f16e9 3c4c7420a968a3f76d61fa16c3af9abe115f07b6 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'evolve', 'user': 'test'} $ hg obslog --all - @ 618f8bd245a8 (15) added foo to x - |\ rewritten(description, branch, content) from 45e15d6e88f5 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) - | | rewritten from 911c21adca13 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + @ 3c4c7420a968 (15) added foo to x + |\ rewritten(description, branch, content) from 7af6be6736c0 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + | | rewritten from c38f731f5ae0 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - x | 45e15d6e88f5 (13) added x - | | rebased(parent) from 801b5920c7ea using rebase by test (Thu Jan 01 00:00:00 1970 +0000) + x | 7af6be6736c0 (13) added x + | | rebased(parent) from f220d694b3a6 using rebase by test (Thu Jan 01 00:00:00 1970 +0000) | | - | x 911c21adca13 (14) added foo to x - | | rebased(parent) from 5cf74a13db18 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + | x c38f731f5ae0 (14) added foo to x + | | rebased(parent) from 91939f44a1fe using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - | x 5cf74a13db18 (12) added foo to x - |/ rewritten(description, branch, content) from 801b5920c7ea using amend by test (Thu Jan 01 00:00:00 1970 +0000) + | x 91939f44a1fe (12) added foo to x + |/ rewritten(description, branch, content) from f220d694b3a6 using amend by test (Thu Jan 01 00:00:00 1970 +0000) | - x 801b5920c7ea (11) added x + x f220d694b3a6 (11) added x Testing when both the content-divergence are on different parents and resolution @@ -292,7 +290,7 @@ $ echo y > y $ hg ci -Aqm "added y" $ hg glog -r . - @ 16:ecf1d3992eb4 added y + @ 16:d84c9e99d55b added y | () [default] draft ~ @@ -301,31 +299,31 @@ $ hg up 'predecessors(.)' --hidden 1 files updated, 0 files merged, 0 files removed, 0 files unresolved - updated to hidden changeset ecf1d3992eb4 - (hidden revision 'ecf1d3992eb4' was rewritten as: 9c32d35206fb) - working directory parent is obsolete! (ecf1d3992eb4) - (use 'hg evolve' to update to its successor: 9c32d35206fb) + updated to hidden changeset d84c9e99d55b + (hidden revision 'd84c9e99d55b' was rewritten as: 98cd38d20303) + working directory parent is obsolete! (d84c9e99d55b) + (use 'hg evolve' to update to its successor: 98cd38d20303) $ hg rebase -r . -d 'desc("added foo to x")' --config experimental.evolution.allowdivergence=True - rebasing 16:ecf1d3992eb4 "added y" + rebasing 16:d84c9e99d55b "added y" 2 new content-divergent changesets $ echo wat > y $ hg amend $ hg glog - @ 19:bfe170c9c964 added y + @ 19:ec9ec45c397e added y | () [bar] draft - | * 17:9c32d35206fb added y + | * 17:98cd38d20303 added y | | () [default] draft - o | 15:618f8bd245a8 added foo to x + o | 15:3c4c7420a968 added foo to x | | () [bar] draft - o | 10:be5a8b9faa8a added d + o | 10:25cb1649b463 added d | | () [default] draft - o | 9:e2ce33033e42 added c + o | 9:81ead2f9fc61 added c |/ () [default] draft - o 8:e7fdc662d630 added b + o 8:c5862ade0278 added b | () [default] draft - o 1:c7586e2a9264 added a - | () [default] draft + | o 1:c7586e2a9264 added a + |/ () [default] draft o 0:8fa14d15e168 added hgignore () [default] draft @@ -333,7 +331,7 @@ merge:[17] added y with: [19] added y base: [16] added y - rebasing "divergent" content-divergent changeset 9c32d35206fb on 618f8bd245a8 + rebasing "divergent" content-divergent changeset 98cd38d20303 on 3c4c7420a968 merging y warning: conflicts while merging y! (edit, then use 'hg resolve --mark') 0 files updated, 0 files merged, 0 files removed, 1 files unresolved @@ -346,61 +344,61 @@ (no more unresolved files) continue: hg evolve --continue $ hg evolve --continue - working directory is now at 7411ed2cf7cf + working directory is now at 26dd4974d99f $ hg glog - @ 21:7411ed2cf7cf added y + @ 21:26dd4974d99f added y | () [bar] draft - o 15:618f8bd245a8 added foo to x + o 15:3c4c7420a968 added foo to x | () [bar] draft - o 10:be5a8b9faa8a added d + o 10:25cb1649b463 added d | () [default] draft - o 9:e2ce33033e42 added c + o 9:81ead2f9fc61 added c | () [default] draft - o 8:e7fdc662d630 added b + o 8:c5862ade0278 added b | () [default] draft - o 1:c7586e2a9264 added a - | () [default] draft + | o 1:c7586e2a9264 added a + |/ () [default] draft o 0:8fa14d15e168 added hgignore () [default] draft $ hg debugobsolete b1661037fa25511d0b7ccddf405e336f9d7d3424 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} b1661037fa25511d0b7ccddf405e336f9d7d3424 da4b96f4a8d610a85b225583138f681d67e275dd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} - da4b96f4a8d610a85b225583138f681d67e275dd 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 e7fdc662d6305fee2908c3f1630e0b20d6f4689a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} - 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 e7fdc662d6305fee2908c3f1630e0b20d6f4689a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} - ca1b80f7960aae2306287bab52b4090c59af8c29 e2ce33033e42db2e61a5f71c6dfb52a33efeaf6a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - c41c793e0ef1ddb463e85ea9491e377d01127ba2 be5a8b9faa8af54f115aa168a2c8564acb40c37d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 801b5920c7ea8d4ebdbc9cfc1e79e665dea2f211 5cf74a13db180e33dc2df8cd2aa70b21252a2a64 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'amend', 'user': 'test'} - 801b5920c7ea8d4ebdbc9cfc1e79e665dea2f211 45e15d6e88f5bd23ba360dff0c7591eca2d99f43 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} - 5cf74a13db180e33dc2df8cd2aa70b21252a2a64 911c21adca136894a2b35f0a58fae7ee94fa5e61 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 911c21adca136894a2b35f0a58fae7ee94fa5e61 618f8bd245a8d1892954eb49a88a6ec5e500a5b5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} - 45e15d6e88f5bd23ba360dff0c7591eca2d99f43 618f8bd245a8d1892954eb49a88a6ec5e500a5b5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'evolve', 'user': 'test'} - ecf1d3992eb4d9700d441013fc4e89014692b461 9c32d35206fb5c3bf0ac814d410914d54a959a87 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} - ecf1d3992eb4d9700d441013fc4e89014692b461 491e9c6e22a4f265fad54d2060b9c2fa45f4301d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '68', 'operation': 'rebase', 'user': 'test'} - 491e9c6e22a4f265fad54d2060b9c2fa45f4301d bfe170c9c96484157a071cd74e400426376c5e0e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} - 9c32d35206fb5c3bf0ac814d410914d54a959a87 7c47d5c3b6f5fb934723cdeb45c5819760988e1d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 7c47d5c3b6f5fb934723cdeb45c5819760988e1d 7411ed2cf7cfbc23f17711a72570787569177d69 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '72', 'operation': 'evolve', 'user': 'test'} - bfe170c9c96484157a071cd74e400426376c5e0e 7411ed2cf7cfbc23f17711a72570787569177d69 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} + 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 2ec52f302b0f0ef30979124e92f1d9f2a26cedf8 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + 2ec52f302b0f0ef30979124e92f1d9f2a26cedf8 c5862ade02783a99f46082f4f0483c449fc4c3f2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} + da4b96f4a8d610a85b225583138f681d67e275dd c5862ade02783a99f46082f4f0483c449fc4c3f2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} + ca1b80f7960aae2306287bab52b4090c59af8c29 81ead2f9fc6156de69d12b7b5df71c34ab8b9c10 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + c41c793e0ef1ddb463e85ea9491e377d01127ba2 25cb1649b46389f8e6e77c3796f01b37996b8fcd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + f220d694b3a605e236b4b34ef97d3cc6959efb89 91939f44a1fe6d865ec791122014971dfff75129 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'amend', 'user': 'test'} + f220d694b3a605e236b4b34ef97d3cc6959efb89 7af6be6736c0aebd226820373190e636fe9f16e9 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} + 91939f44a1fe6d865ec791122014971dfff75129 c38f731f5ae01e417ceeea09f046febf4536d356 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + c38f731f5ae01e417ceeea09f046febf4536d356 3c4c7420a968a3f76d61fa16c3af9abe115f07b6 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} + 7af6be6736c0aebd226820373190e636fe9f16e9 3c4c7420a968a3f76d61fa16c3af9abe115f07b6 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'evolve', 'user': 'test'} + d84c9e99d55bfa499ab77dabd1fb3035e8f14ba9 98cd38d203030c04c89650c7280a6a71ae2f748c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} + d84c9e99d55bfa499ab77dabd1fb3035e8f14ba9 6c3124aac43f4c0e64155b93ea60e0e10abd6ba1 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '68', 'operation': 'rebase', 'user': 'test'} + 6c3124aac43f4c0e64155b93ea60e0e10abd6ba1 ec9ec45c397e15dfd9f25a91b6ffa1e17f9b9471 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} + 98cd38d203030c04c89650c7280a6a71ae2f748c 5ddc0bec0e2650fb56e3b5d24f7c7c3a61401fbe 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + 5ddc0bec0e2650fb56e3b5d24f7c7c3a61401fbe 26dd4974d99f30b9c9b259e22254b29474155d45 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '72', 'operation': 'evolve', 'user': 'test'} + ec9ec45c397e15dfd9f25a91b6ffa1e17f9b9471 26dd4974d99f30b9c9b259e22254b29474155d45 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} $ hg obslog -r . --all - @ 7411ed2cf7cf (21) added y - |\ rewritten(branch, content) from 7c47d5c3b6f5 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) - | | amended(content) from bfe170c9c964 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + @ 26dd4974d99f (21) added y + |\ rewritten(branch, content) from 5ddc0bec0e26 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + | | amended(content) from ec9ec45c397e using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - x | 7c47d5c3b6f5 (20) added y - | | rebased(parent) from 9c32d35206fb using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + x | 5ddc0bec0e26 (20) added y + | | rebased(parent) from 98cd38d20303 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - | x bfe170c9c964 (19) added y - | | amended(content) from 491e9c6e22a4 using amend by test (Thu Jan 01 00:00:00 1970 +0000) + | x ec9ec45c397e (19) added y + | | amended(content) from 6c3124aac43f using amend by test (Thu Jan 01 00:00:00 1970 +0000) | | - | x 491e9c6e22a4 (18) added y - | | rewritten(branch, parent) from ecf1d3992eb4 using rebase by test (Thu Jan 01 00:00:00 1970 +0000) + | x 6c3124aac43f (18) added y + | | rewritten(branch, parent) from d84c9e99d55b using rebase by test (Thu Jan 01 00:00:00 1970 +0000) | | - x | 9c32d35206fb (17) added y - |/ amended(content) from ecf1d3992eb4 using amend by test (Thu Jan 01 00:00:00 1970 +0000) + x | 98cd38d20303 (17) added y + |/ amended(content) from d84c9e99d55b using amend by test (Thu Jan 01 00:00:00 1970 +0000) | - x ecf1d3992eb4 (16) added y + x d84c9e99d55b (16) added y checking that relocated commit is there @@ -409,11 +407,11 @@ # User test # Date 0 0 # Thu Jan 01 00:00:00 1970 +0000 - # Node ID 7c47d5c3b6f5fb934723cdeb45c5819760988e1d - # Parent 618f8bd245a8d1892954eb49a88a6ec5e500a5b5 + # Node ID 5ddc0bec0e2650fb56e3b5d24f7c7c3a61401fbe + # Parent 3c4c7420a968a3f76d61fa16c3af9abe115f07b6 added y - diff -r 618f8bd245a8 -r 7c47d5c3b6f5 y + diff -r 3c4c7420a968 -r 5ddc0bec0e26 y --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/y Thu Jan 01 00:00:00 1970 +0000 @@ -0,0 +1,1 @@ @@ -423,18 +421,18 @@ ---------------------------------------------------------------------- $ hg glog - @ 21:7411ed2cf7cf added y + @ 21:26dd4974d99f added y | () [bar] draft - o 15:618f8bd245a8 added foo to x + o 15:3c4c7420a968 added foo to x | () [bar] draft - o 10:be5a8b9faa8a added d + o 10:25cb1649b463 added d | () [default] draft - o 9:e2ce33033e42 added c + o 9:81ead2f9fc61 added c | () [default] draft - o 8:e7fdc662d630 added b + o 8:c5862ade0278 added b | () [default] draft - o 1:c7586e2a9264 added a - | () [default] draft + | o 1:c7586e2a9264 added a + |/ () [default] draft o 0:8fa14d15e168 added hgignore () [default] draft @@ -444,7 +442,7 @@ $ echo z > z $ hg ci -Aqm "added z" $ hg glog -r . - @ 22:2048a66e8834 added z + @ 22:136e58088ce2 added z | () [default] draft ~ @@ -454,33 +452,33 @@ $ hg up 'predecessors(.)' --hidden 0 files updated, 0 files merged, 1 files removed, 0 files unresolved - updated to hidden changeset 2048a66e8834 - (hidden revision '2048a66e8834' was rewritten as: 9bc2ace42175) - working directory parent is obsolete! (2048a66e8834) - (use 'hg evolve' to update to its successor: 9bc2ace42175) + updated to hidden changeset 136e58088ce2 + (hidden revision '136e58088ce2' was rewritten as: f4c3594c72e7) + working directory parent is obsolete! (136e58088ce2) + (use 'hg evolve' to update to its successor: f4c3594c72e7) $ hg rebase -r . -d 'desc("added y")' --config experimental.evolution.allowdivergence=True - rebasing 22:2048a66e8834 "added z" + rebasing 22:136e58088ce2 "added z" 2 new content-divergent changesets $ echo bar > z $ hg amend $ hg glog - @ 25:40a21b3496bc added z + @ 25:7e87b40e3aa8 added z | () [bar] draft - | * 23:9bc2ace42175 added z + | * 23:f4c3594c72e7 added z | | () [default] draft - o | 21:7411ed2cf7cf added y + o | 21:26dd4974d99f added y | | () [bar] draft - o | 15:618f8bd245a8 added foo to x + o | 15:3c4c7420a968 added foo to x | | () [bar] draft - o | 10:be5a8b9faa8a added d + o | 10:25cb1649b463 added d | | () [default] draft - o | 9:e2ce33033e42 added c + o | 9:81ead2f9fc61 added c |/ () [default] draft - o 8:e7fdc662d630 added b + o 8:c5862ade0278 added b | () [default] draft - o 1:c7586e2a9264 added a - | () [default] draft + | o 1:c7586e2a9264 added a + |/ () [default] draft o 0:8fa14d15e168 added hgignore () [default] draft @@ -488,7 +486,7 @@ merge:[23] added z with: [25] added z base: [22] added z - rebasing "divergent" content-divergent changeset 9bc2ace42175 on 7411ed2cf7cf + rebasing "divergent" content-divergent changeset f4c3594c72e7 on 26dd4974d99f merging y warning: conflicts while merging y! (edit, then use 'hg resolve --mark') unresolved merge conflicts @@ -496,16 +494,16 @@ [240] $ hg diff - diff -r 7411ed2cf7cf y + diff -r 26dd4974d99f y --- a/y Thu Jan 01 00:00:00 1970 +0000 +++ b/y Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +1,5 @@ - +<<<<<<< destination: 7411ed2cf7cf bar - test: added y + +<<<<<<< destination: 26dd4974d99f bar - test: added y watbar +======= +foo - +>>>>>>> evolving: 9bc2ace42175 - test: added z - diff -r 7411ed2cf7cf z + +>>>>>>> evolving: f4c3594c72e7 - test: added z + diff -r 26dd4974d99f z --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/z Thu Jan 01 00:00:00 1970 +0000 @@ -0,0 +1,1 @@ @@ -517,7 +515,7 @@ continue: hg evolve --continue $ hg evolve --continue - evolving 23:9bc2ace42175 "added z" + evolving 23:f4c3594c72e7 "added z" merging y warning: conflicts while merging y! (edit, then use 'hg resolve --mark') 1 files updated, 0 files merged, 0 files removed, 1 files unresolved @@ -526,16 +524,16 @@ [240] $ hg diff - diff -r 635c0edd2e45 y + diff -r 5049972c0e21 y --- a/y Thu Jan 01 00:00:00 1970 +0000 +++ b/y Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +1,5 @@ - +<<<<<<< local: 635c0edd2e45 - test: added z + +<<<<<<< local: 5049972c0e21 - test: added z foo +======= +watbar - +>>>>>>> other: 40a21b3496bc bar - test: added z - diff -r 635c0edd2e45 z + +>>>>>>> other: 7e87b40e3aa8 bar - test: added z + diff -r 5049972c0e21 z --- a/z Thu Jan 01 00:00:00 1970 +0000 +++ b/z Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +1,1 @@ @@ -547,23 +545,23 @@ (no more unresolved files) continue: hg evolve --continue $ hg evolve --continue - working directory is now at 664febd074c2 + working directory is now at 04eb6e8d253d $ hg glog - @ 27:664febd074c2 added z + @ 27:04eb6e8d253d added z | () [bar] draft - o 21:7411ed2cf7cf added y + o 21:26dd4974d99f added y | () [bar] draft - o 15:618f8bd245a8 added foo to x + o 15:3c4c7420a968 added foo to x | () [bar] draft - o 10:be5a8b9faa8a added d + o 10:25cb1649b463 added d | () [default] draft - o 9:e2ce33033e42 added c + o 9:81ead2f9fc61 added c | () [default] draft - o 8:e7fdc662d630 added b + o 8:c5862ade0278 added b | () [default] draft - o 1:c7586e2a9264 added a - | () [default] draft + | o 1:c7586e2a9264 added a + |/ () [default] draft o 0:8fa14d15e168 added hgignore () [default] draft @@ -573,17 +571,17 @@ # Date 0 0 # Thu Jan 01 00:00:00 1970 +0000 # Branch bar - # Node ID 664febd074c2f9c5c4e03045dd688e93360f297c - # Parent 7411ed2cf7cfbc23f17711a72570787569177d69 + # Node ID 04eb6e8d253d5f17e0d9b1518678e015c272704e + # Parent 26dd4974d99f30b9c9b259e22254b29474155d45 added z - diff -r 7411ed2cf7cf -r 664febd074c2 y + diff -r 26dd4974d99f -r 04eb6e8d253d y --- a/y Thu Jan 01 00:00:00 1970 +0000 +++ b/y Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +1,1 @@ -watbar +foo - diff -r 7411ed2cf7cf -r 664febd074c2 z + diff -r 26dd4974d99f -r 04eb6e8d253d z --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/z Thu Jan 01 00:00:00 1970 +0000 @@ -0,0 +1,1 @@ @@ -592,46 +590,46 @@ $ hg debugobsolete b1661037fa25511d0b7ccddf405e336f9d7d3424 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} b1661037fa25511d0b7ccddf405e336f9d7d3424 da4b96f4a8d610a85b225583138f681d67e275dd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} - da4b96f4a8d610a85b225583138f681d67e275dd 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 e7fdc662d6305fee2908c3f1630e0b20d6f4689a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} - 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 e7fdc662d6305fee2908c3f1630e0b20d6f4689a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} - ca1b80f7960aae2306287bab52b4090c59af8c29 e2ce33033e42db2e61a5f71c6dfb52a33efeaf6a 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - c41c793e0ef1ddb463e85ea9491e377d01127ba2 be5a8b9faa8af54f115aa168a2c8564acb40c37d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 801b5920c7ea8d4ebdbc9cfc1e79e665dea2f211 5cf74a13db180e33dc2df8cd2aa70b21252a2a64 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'amend', 'user': 'test'} - 801b5920c7ea8d4ebdbc9cfc1e79e665dea2f211 45e15d6e88f5bd23ba360dff0c7591eca2d99f43 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} - 5cf74a13db180e33dc2df8cd2aa70b21252a2a64 911c21adca136894a2b35f0a58fae7ee94fa5e61 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 911c21adca136894a2b35f0a58fae7ee94fa5e61 618f8bd245a8d1892954eb49a88a6ec5e500a5b5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} - 45e15d6e88f5bd23ba360dff0c7591eca2d99f43 618f8bd245a8d1892954eb49a88a6ec5e500a5b5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'evolve', 'user': 'test'} - ecf1d3992eb4d9700d441013fc4e89014692b461 9c32d35206fb5c3bf0ac814d410914d54a959a87 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} - ecf1d3992eb4d9700d441013fc4e89014692b461 491e9c6e22a4f265fad54d2060b9c2fa45f4301d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '68', 'operation': 'rebase', 'user': 'test'} - 491e9c6e22a4f265fad54d2060b9c2fa45f4301d bfe170c9c96484157a071cd74e400426376c5e0e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} - 9c32d35206fb5c3bf0ac814d410914d54a959a87 7c47d5c3b6f5fb934723cdeb45c5819760988e1d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} - 7c47d5c3b6f5fb934723cdeb45c5819760988e1d 7411ed2cf7cfbc23f17711a72570787569177d69 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '72', 'operation': 'evolve', 'user': 'test'} - bfe170c9c96484157a071cd74e400426376c5e0e 7411ed2cf7cfbc23f17711a72570787569177d69 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} - 2048a66e8834bda866dcc8c479f091897816833e 9bc2ace42175da7380251fca97730f62ff5b9185 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} - 2048a66e8834bda866dcc8c479f091897816833e 8bf0130be95ef72377e39232335531426c2abcf9 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '68', 'operation': 'rebase', 'user': 'test'} - 8bf0130be95ef72377e39232335531426c2abcf9 40a21b3496bc55fd0c0ac92d81b2930cfa4d4bef 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} - 9bc2ace42175da7380251fca97730f62ff5b9185 635c0edd2e45de215b2061b30aae5168708238d3 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '12', 'operation': 'evolve', 'user': 'test'} - 635c0edd2e45de215b2061b30aae5168708238d3 664febd074c2f9c5c4e03045dd688e93360f297c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '72', 'operation': 'evolve', 'user': 'test'} - 40a21b3496bc55fd0c0ac92d81b2930cfa4d4bef 664febd074c2f9c5c4e03045dd688e93360f297c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} + 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 2ec52f302b0f0ef30979124e92f1d9f2a26cedf8 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + 2ec52f302b0f0ef30979124e92f1d9f2a26cedf8 c5862ade02783a99f46082f4f0483c449fc4c3f2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} + da4b96f4a8d610a85b225583138f681d67e275dd c5862ade02783a99f46082f4f0483c449fc4c3f2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} + ca1b80f7960aae2306287bab52b4090c59af8c29 81ead2f9fc6156de69d12b7b5df71c34ab8b9c10 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + c41c793e0ef1ddb463e85ea9491e377d01127ba2 25cb1649b46389f8e6e77c3796f01b37996b8fcd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + f220d694b3a605e236b4b34ef97d3cc6959efb89 91939f44a1fe6d865ec791122014971dfff75129 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'amend', 'user': 'test'} + f220d694b3a605e236b4b34ef97d3cc6959efb89 7af6be6736c0aebd226820373190e636fe9f16e9 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} + 91939f44a1fe6d865ec791122014971dfff75129 c38f731f5ae01e417ceeea09f046febf4536d356 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + c38f731f5ae01e417ceeea09f046febf4536d356 3c4c7420a968a3f76d61fa16c3af9abe115f07b6 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'} + 7af6be6736c0aebd226820373190e636fe9f16e9 3c4c7420a968a3f76d61fa16c3af9abe115f07b6 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'evolve', 'user': 'test'} + d84c9e99d55bfa499ab77dabd1fb3035e8f14ba9 98cd38d203030c04c89650c7280a6a71ae2f748c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} + d84c9e99d55bfa499ab77dabd1fb3035e8f14ba9 6c3124aac43f4c0e64155b93ea60e0e10abd6ba1 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '68', 'operation': 'rebase', 'user': 'test'} + 6c3124aac43f4c0e64155b93ea60e0e10abd6ba1 ec9ec45c397e15dfd9f25a91b6ffa1e17f9b9471 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} + 98cd38d203030c04c89650c7280a6a71ae2f748c 5ddc0bec0e2650fb56e3b5d24f7c7c3a61401fbe 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'} + 5ddc0bec0e2650fb56e3b5d24f7c7c3a61401fbe 26dd4974d99f30b9c9b259e22254b29474155d45 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '72', 'operation': 'evolve', 'user': 'test'} + ec9ec45c397e15dfd9f25a91b6ffa1e17f9b9471 26dd4974d99f30b9c9b259e22254b29474155d45 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} + 136e58088ce2a46749c73256b02608ca9be0fe09 f4c3594c72e7140404222d25e8827292e5d1a728 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} + 136e58088ce2a46749c73256b02608ca9be0fe09 da49edc1732932755e2c42d91b6883e6616ff40b 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '68', 'operation': 'rebase', 'user': 'test'} + da49edc1732932755e2c42d91b6883e6616ff40b 7e87b40e3aa8d28f0ba07c1cec4f562e57ba7c12 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'} + f4c3594c72e7140404222d25e8827292e5d1a728 5049972c0e212e0ad051e628b37d162097944b5f 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '12', 'operation': 'evolve', 'user': 'test'} + 5049972c0e212e0ad051e628b37d162097944b5f 04eb6e8d253d5f17e0d9b1518678e015c272704e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '72', 'operation': 'evolve', 'user': 'test'} + 7e87b40e3aa8d28f0ba07c1cec4f562e57ba7c12 04eb6e8d253d5f17e0d9b1518678e015c272704e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'evolve', 'user': 'test'} $ hg obslog --all - @ 664febd074c2 (27) added z - |\ amended(content) from 40a21b3496bc using evolve by test (Thu Jan 01 00:00:00 1970 +0000) - | | rewritten(branch, content) from 635c0edd2e45 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + @ 04eb6e8d253d (27) added z + |\ rewritten(branch, content) from 5049972c0e21 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + | | amended(content) from 7e87b40e3aa8 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - x | 40a21b3496bc (25) added z - | | amended(content) from 8bf0130be95e using amend by test (Thu Jan 01 00:00:00 1970 +0000) + x | 5049972c0e21 (26) added z + | | rewritten(parent, content) from f4c3594c72e7 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | | - | x 635c0edd2e45 (26) added z - | | rewritten(parent, content) from 9bc2ace42175 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) + | x 7e87b40e3aa8 (25) added z + | | amended(content) from da49edc17329 using amend by test (Thu Jan 01 00:00:00 1970 +0000) | | - x | 8bf0130be95e (24) added z - | | rewritten(branch, parent) from 2048a66e8834 using rebase by test (Thu Jan 01 00:00:00 1970 +0000) + | x da49edc17329 (24) added z + | | rewritten(branch, parent) from 136e58088ce2 using rebase by test (Thu Jan 01 00:00:00 1970 +0000) | | - | x 9bc2ace42175 (23) added z - |/ amended(content) from 2048a66e8834 using amend by test (Thu Jan 01 00:00:00 1970 +0000) + x | f4c3594c72e7 (23) added z + |/ amended(content) from 136e58088ce2 using amend by test (Thu Jan 01 00:00:00 1970 +0000) | - x 2048a66e8834 (22) added z + x 136e58088ce2 (22) added z $ cd ..