Mercurial > evolve
view tests/test-obsolete-rebase.t @ 473:1f8f8dd75d18
obsolete: prevent bare hg update to select hidden changeset
The issue remain with branch name.
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Tue, 21 Aug 2012 04:36:25 +0200 |
parents | 641e0cd43d6d |
children | 6989d8fe4ed2 |
line wrap: on
line source
$ cat >> $HGRCPATH <<EOF > [defaults] > amend=-d "0 0" > [extensions] > hgext.rebase= > hgext.graphlog= > EOF $ echo "obsolete=$(echo $(dirname $TESTDIR))/hgext/obsolete.py" >> $HGRCPATH $ glog() { > hg glog --template '{rev}:{node|short}@{branch}({phase}) {desc|firstline}\n'\ > "$@" > } $ hg init repo $ cd repo $ echo a > a $ hg ci -Am adda adding a $ echo a >> a $ hg ci -m changea Test regular rebase $ hg up 0 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ echo b > b $ hg ci -Am addb adding b created new head $ echo e > e $ hg ci -Am adde e (phase compliance) $ hg phase --public 3 $ hg rebase -d 1 -r 3 abort: can't rebase immutable changeset 98e4a024635e (see hg help phases for details) [255] $ hg phase --draft --force 0 $ hg rebase -d 1 -r 3 --detach --keep $ glog @ 4:9c5494949763@default(draft) adde | | o 3:98e4a024635e@default(draft) adde | | | o 2:102a90ea7b4a@default(draft) addb | | o | 1:540395c44225@default(draft) changea |/ o 0:07f494440405@default(draft) adda $ glog --hidden @ 4:9c5494949763@default(draft) adde | | o 3:98e4a024635e@default(draft) adde | | | o 2:102a90ea7b4a@default(draft) addb | | o | 1:540395c44225@default(draft) changea |/ o 0:07f494440405@default(draft) adda $ hg debugobsolete $ hg --config extensions.hgext.mq= strip tip 0 files updated, 0 files merged, 1 files removed, 0 files unresolved saved backup bundle to $TESTTMP/repo/.hg/strip-backup/9c5494949763-backup.hg $ hg rebase -d 1 -r 3 --detach $ glog @ 4:9c5494949763@default(draft) adde | | o 2:102a90ea7b4a@default(draft) addb | | o | 1:540395c44225@default(draft) changea |/ o 0:07f494440405@default(draft) adda $ glog --hidden @ 4:9c5494949763@default(draft) adde | | x 3:98e4a024635e@default(draft) adde | | | o 2:102a90ea7b4a@default(draft) addb | | o | 1:540395c44225@default(draft) changea |/ o 0:07f494440405@default(draft) adda $ hg debugobsolete 98e4a024635e8c50928144c9277a4388d26bd786 9c54949497631abfb5a255d96746bbd3a42ed2ba 0 {'date': '* *', 'user': 'test'} (glob) Test rebase with deleted empty revision $ hg up 0 1 files updated, 0 files merged, 1 files removed, 0 files unresolved $ hg branch foo marked working directory as branch foo (branches are permanent and global, did you want a bookmark?) $ echo a >> a $ hg ci -m changea $ hg rebase -d 1 $ glog --hidden x 5:4e322f7ce8e3@foo(draft) changea | | o 4:9c5494949763@default(draft) adde | | | | x 3:98e4a024635e@default(draft) adde | | | +---o 2:102a90ea7b4a@default(draft) addb | | | @ 1:540395c44225@default(draft) changea |/ o 0:07f494440405@default(draft) adda $ hg debugobsolete 98e4a024635e8c50928144c9277a4388d26bd786 9c54949497631abfb5a255d96746bbd3a42ed2ba 0 {'date': '* *', 'user': 'test'} (glob) 4e322f7ce8e3e4203950eac9ece27bf7e45ffa6c 540395c442253af3b991be882b539e7e198b5808 0 {'date': '* *', 'user': 'test'} (glob) Test rebase --collapse $ hg up 0 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ echo c > c $ hg ci -Am addc adding c created new head $ echo c >> c $ hg ci -m changec $ hg rebase --collapse -d 1 merging c $ glog --hidden @ 8:a7773ffa7edc@default(draft) Collapsed revision | | x 7:03f31481307a@default(draft) changec | | | x 6:076e9b2ffbe1@default(draft) addc | | | | x 5:4e322f7ce8e3@foo(draft) changea | |/ +---o 4:9c5494949763@default(draft) adde | | | | x 3:98e4a024635e@default(draft) adde | | | | | o 2:102a90ea7b4a@default(draft) addb | |/ o | 1:540395c44225@default(draft) changea |/ o 0:07f494440405@default(draft) adda $ hg debugobsolete 98e4a024635e8c50928144c9277a4388d26bd786 9c54949497631abfb5a255d96746bbd3a42ed2ba 0 {'date': '* *', 'user': 'test'} (glob) 4e322f7ce8e3e4203950eac9ece27bf7e45ffa6c 540395c442253af3b991be882b539e7e198b5808 0 {'date': '* *', 'user': 'test'} (glob) 076e9b2ffbe11c7bcb9ee97f5c0c8b88a1a10b93 a7773ffa7edcfac27b5dcdb2d5c1036e15a49861 0 {'date': '* *', 'user': 'test'} (glob) 03f31481307aaf5275d07ec28c1c59931759ccd2 a7773ffa7edcfac27b5dcdb2d5c1036e15a49861 0 {'date': '* *', 'user': 'test'} (glob) Test rebase --abort $ hg debugobsolete > ../successors.old $ hg up 0 1 files updated, 0 files merged, 1 files removed, 0 files unresolved $ echo d > d $ hg ci -Am addd d created new head $ echo b >> a $ hg ci -m appendab $ hg rebase -d 1 merging a warning: conflicts during merge. merging a incomplete! (edit conflicts, then use 'hg resolve --mark') abort: unresolved conflicts (see hg resolve, then hg rebase --continue) [255] $ hg rebase --abort saved backup bundle to $TESTTMP/repo/.hg/strip-backup/03f165c84ea8-backup.hg rebase aborted $ hg debugobsolete > ../successors.new $ diff -u ../successors.old ../successors.new Test rebase --continue $ hg rebase -d 1 merging a warning: conflicts during merge. merging a incomplete! (edit conflicts, then use 'hg resolve --mark') abort: unresolved conflicts (see hg resolve, then hg rebase --continue) [255] $ hg resolve --tool internal:other a $ hg rebase --continue $ glog --hidden @ 12:1951ead97108@default(draft) appendab | o 11:03f165c84ea8@default(draft) addd | | x 10:4b9d80f48523@default(draft) appendab | | | x 9:a31943eabc43@default(draft) addd | | +---o 8:a7773ffa7edc@default(draft) Collapsed revision | | | | x 7:03f31481307a@default(draft) changec | | | | | x 6:076e9b2ffbe1@default(draft) addc | |/ | | x 5:4e322f7ce8e3@foo(draft) changea | |/ +---o 4:9c5494949763@default(draft) adde | | | | x 3:98e4a024635e@default(draft) adde | | | | | o 2:102a90ea7b4a@default(draft) addb | |/ o | 1:540395c44225@default(draft) changea |/ o 0:07f494440405@default(draft) adda $ hg debugobsolete > ../successors.new $ diff -u ../successors.old ../successors.new --- ../successors.old* (glob) +++ ../successors.new* (glob) @@ -2,3 +2,5 @@ 4e322f7ce8e3e4203950eac9ece27bf7e45ffa6c 540395c442253af3b991be882b539e7e198b5808 0 {'date': '* *', 'user': 'test'} (glob) 076e9b2ffbe11c7bcb9ee97f5c0c8b88a1a10b93 a7773ffa7edcfac27b5dcdb2d5c1036e15a49861 0 {'date': '* *', 'user': 'test'} (glob) 03f31481307aaf5275d07ec28c1c59931759ccd2 a7773ffa7edcfac27b5dcdb2d5c1036e15a49861 0 {'date': '* *', 'user': 'test'} (glob) +a31943eabc4327df16f9eca71bf7779c32f815f7 03f165c84ea8889fc35a64a392caa7a0084dd212 0 {'date': '* *', 'user': 'test'} (glob) +4b9d80f48523e296f4402cc8e37236b768dfb981 1951ead9710803dbf117e95901954d5ed717f80b 0 {'date': '* *', 'user': 'test'} (glob) [1]