evolve: drop the "computing new diff message" for phase-divergence
Future code update will remove this message, dropping it early clarify the
future diff.
$cat>>$HGRCPATH<<EOF>[ui]>interactive=True>[extensions]>EOF$echo"evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/">>$HGRCPATHhgprev&nextmovetoparent/child$hginittest-repo$cdtest-repo$toucha$hgadda$hgcommit-m'added a'$touchb$hgaddb$hgcommit-m'added b'$hgprev0filesupdated,0filesmerged,1filesremoved,0filesunresolved[0]addeda$hgnext1filesupdated,0filesmerged,0filesremoved,0filesunresolved[1]addedbhgprev&nextrespect--quiet$hgprev-q$hgnext-qhgprev-Bshouldmoveactivebookmark$hgbookmarkmark$hgbookmarks*mark1:6e742c9127b3$hgprev-B0filesupdated,0filesmerged,1filesremoved,0filesunresolved[0]addeda$hgbookmarks*mark0:a154386e50d1hgnext-Bshouldmoveactivebookmark$hgnext-B--dry-runhgupdate6e742c9127b3;hgbookmarkmark-r6e742c9127b3;[1]addedb$hgnext-B1filesupdated,0filesmerged,0filesremoved,0filesunresolved[1]addedb$hgbookmarks*mark1:6e742c9127b3hgprevshouldunsetactivebookmark$hgprev--dry-runhgupdatea154386e50d1;[0]addeda$hgprev0filesupdated,0filesmerged,1filesremoved,0filesunresolved[0]addeda$hgbookmarksmark1:6e742c9127b3hgnextshouldmoveactivebookmark$hgbookmarkmark2$hgbookmarksmark1:6e742c9127b3*mark20:a154386e50d1$hgnext--dry-run--color=debughgupdate6e742c9127b3;[[evolve.rev|1]]addedb$hgnext1filesupdated,0filesmerged,0filesremoved,0filesunresolved[1]addedb$hgbookmarksmark1:6e742c9127b3mark20:a154386e50d1$hgbookmark-dmark2$hgbookmarkmarkhgnext/prevshouldnotinterferewithinactivebookmarks$touchc$hgaddc$hgcommit-m'added c'$hgbookmark-r2no-move$hgprev-B0filesupdated,0filesmerged,1filesremoved,0filesunresolved[1]addedb$hgbookmarks*mark1:6e742c9127b3no-move2:4e26ef31f919$hgnext-B1filesupdated,0filesmerged,0filesremoved,0filesunresolved[2]addedc$hgbookmarks*mark2:4e26ef31f919no-move2:4e26ef31f919$hgup10filesupdated,0filesmerged,1filesremoved,0filesunresolved(leavingbookmarkmark)$hgnext-B1filesupdated,0filesmerged,0filesremoved,0filesunresolved[2]addedc$hgbookmarksmark2:4e26ef31f919no-move2:4e26ef31f919$hgprev-B0filesupdated,0filesmerged,1filesremoved,0filesunresolved[1]addedb$hgbookmarksmark2:4e26ef31f919no-move2:4e26ef31f919testprevonroot$hgupnull0filesupdated,0filesmerged,2filesremoved,0filesunresolved$hgprevalreadyatrepositoryroot[1]$hgup12filesupdated,0filesmerged,0filesremoved,0filesunresolvedBehaviorwithlocalmodification--------------------------------$echofoo>modified-bar$hgaddmodified-bar$hgprevabort:uncommittedchanges(doyouwant--merge?)[255]$hgprev--merge0filesupdated,0filesmerged,1filesremoved,0filesunresolved[0]addeda$hgnextabort:uncommittedchanges(doyouwant--merge?)[255]$hgnext--merge1filesupdated,0filesmerged,0filesremoved,0filesunresolved[1]addedbBehaviorwithaspiringchildren-------------------------------$hgrevert--allforgettingmodified-bar$hglog-Gochangeset:2:4e26ef31f919|bookmark:mark|bookmark:no-move|tag:tip|user:test|date:ThuJan0100:00:001970+0000|summary:addedc|@changeset:1:6e742c9127b3|user:test|date:ThuJan0100:00:001970+0000|summary:addedb|ochangeset:0:a154386e50d1user:testdate:ThuJan0100:00:001970+0000summary:addedanochildrenofanykind$hgnext1filesupdated,0filesmerged,0filesremoved,0filesunresolved[2]addedc$hgnextnochildren[1]$hgnext--evolvenochildren[1]$hgprev--dry-run--color=debughgupdate6e742c9127b3;[[evolve.rev|1]]addedb$hgprev0filesupdated,0filesmerged,1filesremoved,0filesunresolved[1]addedbsomeaspiringchildren$hgamend-m'added b (2)'1neworphanchangesets$hgnext--no-evolvenochildren(1unstablechangesetstobeevolvedhere,doyouwant--evolve?)[1]$hgnext--evolve--dry-runmove:[2]addedcatop:[3]addedb(2)hgrebase-r4e26ef31f919-d9ad178109a19(addcoloroutputforsmoketesting)$hgnext--evolve--colordebug[evolve.operation|move:][[evolve.rev|2]]addedcatop:[[evolve.rev|3]]addedb(2)[ui.status|workingdirectorynowat[evolve.node|e3b6d5df389b]]nextwithambiguity$hgprev0filesupdated,0filesmerged,1filesremoved,0filesunresolved[3]addedb(2)$echod>d$hgaddd$hgcommit-m'added d'creatednewhead$hgprev0filesupdated,0filesmerged,1filesremoved,0filesunresolved[3]addedb(2)$hgnext<<EOF>2>EOFambiguousnextchangeset,chooseonetoupdate:1:[e3b6d5df389b]addedc2:[9df671ccd2c7]addeddq:quitthepromptentertheindexoftherevisionyouwanttoselect:21filesupdated,0filesmerged,0filesremoved,0filesunresolved[5]addedd$hgprev0filesupdated,0filesmerged,1filesremoved,0filesunresolved[3]addedb(2)nextwithambiguityinaspiringchildren$hgam-m'added b (3)'2neworphanchangesets$hgnext--no-evolvenochildren(2unstablechangesetstobeevolvedhere,doyouwant--evolve?)[1]$hgnext--evolve<<EOF>1>EOFambiguousnext(unstable)changeset,chooseonetoevolveandupdate:1:[e3b6d5df389b]addedc2:[9df671ccd2c7]addeddq:quitthepromptentertheindexoftherevisionyouwanttoselect:1move:[4]addedcatop:[6]addedb(3)workingdirectorynowat5ce67c2407b0$hglog-GT"{rev}:{node|short}{desc}\n"@7:5ce67c2407b0addedc|o6:d7f119adc759addedb(3)||*5:9df671ccd2c7addedd|||x3:9ad178109a19addedb(2)|/o0:a154386e50d1addeda$hgevolve-r5move:[5]addeddatop:[6]addedb(3)workingdirectoryisnowat47ea25be8aeaprevwithmultipleparents$hglog-GT"{rev}:{node|short}{desc}\n"@8:47ea25be8aeaaddedd||o7:5ce67c2407b0addedc|/o6:d7f119adc759addedb(3)|o0:a154386e50d1addeda$hgmerge-r5ce67c2407b01filesupdated,0filesmerged,0filesremoved,0filesunresolved(branchmerge,don't forget to commit) $ hg ci -m "merge commit" $ hg prev <<EOF>q>EOFmultipleparents,chooseonetoupdate:1:[47ea25be8aea]addedd2:[5ce67c2407b0]addedcq:quitthepromptentertheindexoftherevisionyouwanttoselect:q[8]addedd[7]addedcmultipleparents,explicitlyupdatetoone[1]$hgprev--configui.interactive=False[8]addedd[7]addedcmultipleparents,explicitlyupdatetoone[1]$hgprev<<EOF>2>EOFmultipleparents,chooseonetoupdate:1:[47ea25be8aea]addedd2:[5ce67c2407b0]addedcq:quitthepromptentertheindexoftherevisionyouwanttoselect:20filesupdated,0filesmerged,1filesremoved,0filesunresolved[7]addedc$hglog-GT"{rev}:{node|short}{desc}\n"o9:a4b8c25a87d3mergecommit|\|o8:47ea25be8aeaaddedd||@|7:5ce67c2407b0addedc|/o6:d7f119adc759addedb(3)|o0:a154386e50d1addeda$cd..prevandnextshouldlockproperlyagainstothercommands$hginitrepo$cdrepo$HGEDITOR="sh ${TESTDIR}/fake-editor.sh"$echohi>foo$hgci-Am'one'addingfoo$echobye>foo$hgci-Am'two'$hgamend--edit&$sleep1$hgprevwaitingforlockonworkingdirectoryof$TESTTMP/repoheldbyprocess'*'onhost'*'(glob)gotlockafter(\d+)seconds(re)1filesupdated,0filesmerged,0filesremoved,0filesunresolved[0]one$wait$hgamend--edit&$sleep1$hgnext--evolvewaitingforlockonworkingdirectoryof$TESTTMP/repoheldbyprocess'*'onhost'*'(glob)1neworphanchangesetsgotlockafter(\d+)seconds(re)move:[2]twoatop:[3]oneworkingdirectorynowata7d885c75614$waittestingnext--evolvewhenworkingdirectoryisdirty$hglog-GT"{rev}:{node|short}{desc|firstline}"@4:a7d885c75614two|o3:c741983992fcone$hgup.^1filesupdated,0filesmerged,0filesremoved,0filesunresolved$echofoobar>bar$hgaddbar$hgamend1neworphanchangesets$echobabar>bar$hgnext--evolveabort:uncommittedchanges(use`hgamend`,`hgrevert`or`hgshelve`)[255]$cd..Testingthat`next`and`prev`respects`commands.update.check=noconflict`$hginitnoconflict$cdnoconflict$echo"[commands]">> .hg/hgrc $ echo "update.check=noconflict" >> .hg/hgrc $ echo hi > wat $ hg ci -Aqm "added wat" $ echo hi > foo $ hg ci -Aqm "added foo" $ echo hi > bar $ hg ci -Aqm "added bar"testing for `hg prev` $ echo bar > wat $ hg prev 0 files updated, 0 files merged, 1 files removed, 0 files unresolved [1] added foo $ hg diff diff -r cf959ce4e1ff wat --- a/wat Thu Jan 01 00:00:00 1970 +0000 +++ b/wat Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +1,1 @@ -hi +bartesting for `hg next` $ hg next 1 files updated, 0 files merged, 0 files removed, 0 files unresolved [2] added bar $ hg diff diff -r ac3de1218820 wat --- a/wat Thu Jan 01 00:00:00 1970 +0000 +++ b/wat Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +1,1 @@ -hi +bartest that we dont end up in merge conflicts $ echo bar > bar $ hg prev abort: conflicting changes (do you want --merge?) [255] $ echo hi > bar $ hg prev 0 files updated, 0 files merged, 1 files removed, 0 files unresolved [1] added foo $ echo bar > bar $ hg add bar $ hg next abort: conflicting changes (do you want --merge?) [255]Test that --merge still works fine with commands.update.check setXXX: yes we want --merge and we passed that! $ echo hi > bar $ echo bar >> bar $ hg next --merge merging bar warning: conflicts while merging bar! (edit, then use 'hgresolve--mark') 0 files updated, 0 files merged, 0 files removed, 1 files unresolved use 'hgresolve' to retry unresolved file merges [2] added bar $ echo babar > bar $ hg resolve -m (no more unresolved files)Testing --merge works with other values of commands.update.check alsoXXX: things are broken! $ hg prev --merge --config commands.update.check=abort file 'bar' was deleted in other [destination] but was modified in local [working copy]. What do you want to do? use (c)hanged version, (d)elete, or leave (u)nresolved? 0 files updated, 0 files merged, 0 files removed, 1 files unresolved use 'hgresolve' to retry unresolved file merges [1] added foo $ hg revert --all forgetting bar reverting wat $ hg resolve -m (no more unresolved files) $ echo bar > bar $ hg add bar $ hg next --merge --config commands.update.check=abort merging bar warning: conflicts while merging bar! (edit, then use 'hgresolve--mark') 0 files updated, 0 files merged, 0 files removed, 1 files unresolved use 'hgresolve' to retry unresolved file merges [2] added barAdd test which shows that now `next` command does not get confused by split:---------------------------------------------------------------------------- $ cd .. $ mkdir nextconfused $ cd nextconfused $ hg init $ echo firstline > a $ hg add a $ hg ci -qm A $ echo bbbbb > b $ echo secondline >> a $ hg add b $ hg ci -qm B $ echo ccccc > c $ hg add c $ hg ci -qm C $ hg log -GT "{rev}:{node|short}{desc}\n" @ 2:fdc998261dcb C | o 1:cc0edb0cc2b1 B | o 0:cae96ff49c84 A $ hg up 1 0 files updated, 0 files merged, 1 files removed, 0 files unresolved $ hg split <<EOF>y>y>n>Y>y>y>EOF1filesupdated,0filesmerged,1filesremoved,0filesunresolvedrevertingaaddingbdiff--gita/ab/a1hunks,1lineschangedexaminechangesto'a'?[Ynesfdaq?]y@@-1,1+1,2@@firstline+secondlinerecordchange1/2to'a'?[Ynesfdaq?]ydiff--gita/bb/bnewfilemode100644examinechangesto'b'?[Ynesfdaq?]ncreatednewheadcontinuesplitting?[Ycdq?]Ydiff--gita/bb/bnewfilemode100644examinechangesto'b'?[Ynesfdaq?]y@@-0,0+1,1@@+bbbbbrecordthischangeto'b'?[Ynesfdaq?]ynomorechangetosplit1neworphanchangesets$hgup3-q$hglog-GT"{rev}:{node|short}{desc}\n"o4:279f6cab32b5B|||newdesc@3:a9f74d07e45cB|||newdesc|*2:fdc998261dcbC|||x1:cc0edb0cc2b1B|/o0:cae96ff49c84A$hgci--amend-m"B modified"1neworphanchangesets$hglog-GT"{rev}:{node|short}{desc}\n"@5:64ab03d3110cBmodified||*4:279f6cab32b5B||||||newdesc|x3:a9f74d07e45cB|/||newdesc|*2:fdc998261dcbC|||x1:cc0edb0cc2b1B|/o0:cae96ff49c84A$hgnext--evolve<<EOF>q>EOFmove:[4]Batop:[5]Bmodifiedworkingdirectorynowat1b434459c7e7