Commits

ZyX_I committed fc5cb58

Improved testrepo: added revision with multiple tags and merge with conflicts, removes and copies

Comments (0)

Files changed (25)

test/annotate-buffers.ok

 {{{1 file
 annotate-buffersrepo/chgrepo.zsh
-aurum://annotate:%TMPDIR%/test/annotate-buffersrepo:54d2db605eec15091bb4b194499d6db40e2af027:chgrepo.zsh
+aurum://annotate:%TMPDIR%/test/annotate-buffersrepo:df55ab32bcfa13929c53541c105b2b20972cb51b:chgrepo.zsh
 annotate-buffersrepo/chgrepo.zsh
 w$: 2, w0: 2, w#: 1
 {{{1 aurum://file
 aurum://file:testrepo:10:chgrepo.zsh
-aurum://annotate:%TMPDIR%/test/testrepo:235d6a7d7b435cd3452b4c84f74fe9bad4b91a59:chgrepo.zsh
+aurum://annotate:%TMPDIR%/test/testrepo:c4110a066208167dae46b08f4e0d8d2b37e842f3:chgrepo.zsh
 aurum://file:testrepo:10:chgrepo.zsh
 w$: 2, w0: 2, w#: 1
 {{{1 aurum://copy
 aurum://copy:testrepo/chgrepo.zsh
-aurum://annotate:%TMPDIR%/test/testrepo:54d2db605eec15091bb4b194499d6db40e2af027:chgrepo.zsh
+aurum://annotate:%TMPDIR%/test/testrepo:df55ab32bcfa13929c53541c105b2b20972cb51b:chgrepo.zsh
 aurum://copy:testrepo/chgrepo.zsh
 w$: 2, w0: 2, w#: 1
 {{{1 aurum://status
-aurum://file:%TMPDIR%/test/annotate-buffersrepo:54d2db605eec15091bb4b194499d6db40e2af027:.hgignore
-aurum://annotate:%TMPDIR%/test/annotate-buffersrepo:54d2db605eec15091bb4b194499d6db40e2af027:.hgignore
+aurum://file:%TMPDIR%/test/annotate-buffersrepo:df55ab32bcfa13929c53541c105b2b20972cb51b:.hgignore
+aurum://annotate:%TMPDIR%/test/annotate-buffersrepo:df55ab32bcfa13929c53541c105b2b20972cb51b:.hgignore
 aurum://status:%TMPDIR%/test/annotate-buffersrepo:show:clean
 w$: 4, w0: 2, w#: 1
 {{{1 aurum://diff
-aurum://file:%TMPDIR%/test/testrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
-aurum://annotate:%TMPDIR%/test/testrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+aurum://file:%TMPDIR%/test/testrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
+aurum://annotate:%TMPDIR%/test/testrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 aurum://diff:testrepo::2:crepo.zsh
 w$: 3, w0: 2, w#: 1
 {{{1 aurum://commit
-aurum://file:%TMPDIR%/test/annotate-buffersrepo:54d2db605eec15091bb4b194499d6db40e2af027:nohglinesrev.lst
-aurum://annotate:%TMPDIR%/test/annotate-buffersrepo:54d2db605eec15091bb4b194499d6db40e2af027:nohglinesrev.lst
+aurum://file:%TMPDIR%/test/annotate-buffersrepo:df55ab32bcfa13929c53541c105b2b20972cb51b:nohglinesrev.lst
+aurum://annotate:%TMPDIR%/test/annotate-buffersrepo:df55ab32bcfa13929c53541c105b2b20972cb51b:nohglinesrev.lst
 aurum://commit:annotate-buffersrepo::::nohglinesrev.lst
 w$: 3, w0: 2, w#: 1
 {{{1 aurum://annotate 1
-aurum://file:%TMPDIR%/test/testrepo:00b61a9315e2ecb239feba3bc44b2ef3af4c7dd1:createrepo.zsh
-aurum://annotate:%TMPDIR%/test/testrepo:00b61a9315e2ecb239feba3bc44b2ef3af4c7dd1:createrepo.zsh
-aurum://file:%TMPDIR%/test/testrepo:00b61a9315e2ecb239feba3bc44b2ef3af4c7dd1:createrepo.zsh
+aurum://file:%TMPDIR%/test/testrepo:99ea42d70fbe32af955de907352999b1d94bef5f:createrepo.zsh
+aurum://annotate:%TMPDIR%/test/testrepo:99ea42d70fbe32af955de907352999b1d94bef5f:createrepo.zsh
+aurum://file:%TMPDIR%/test/testrepo:99ea42d70fbe32af955de907352999b1d94bef5f:createrepo.zsh
 w$: 2, w0: 2, w#: 1
 {{{1 aurum://annotate 2
-aurum://file:%TMPDIR%/test/testrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+aurum://file:%TMPDIR%/test/testrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 aurum://annotate:testrepo:2:crepo.zsh
-aurum://file:%TMPDIR%/test/testrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+aurum://file:%TMPDIR%/test/testrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 w$: 2, w0: 2, w#: 1

Binary file modified.

test/annotatemaps.ok

 {{{1 o
-#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
-*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
+*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 {{{1 a
-#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
-*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
+*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 {{{1 <CR>
-#1: aurum://file:%TMPDIR%/test/annotatemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+#1: aurum://file:%TMPDIR%/test/annotatemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 *2: %TMPDIR%/test/annotatemapsrepo/chgrepo.zsh
 {{{1 D
-#1: aurum://file:%TMPDIR%/test/annotatemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+#1: aurum://file:%TMPDIR%/test/annotatemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 *2: %TMPDIR%/test/annotatemapsrepo/chgrepo.zsh
 {{{1 C
-*1: aurum://file:%TMPDIR%/test/testrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
-#2: aurum://file:%TMPDIR%/test/testrepo:fe851681c15eb282a18ab7660f85a677ee1e577c:crepo.zsh
+*1: aurum://file:%TMPDIR%/test/testrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
+#2: aurum://file:%TMPDIR%/test/testrepo:dfe39aa48c6ddde158e42217548b531a45ff66e9:crepo.zsh
 {{{1 d
-*1: aurum://diff:%TMPDIR%/test/annotatemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1::crepo.zsh
+*1: aurum://diff:%TMPDIR%/test/annotatemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2::crepo.zsh
 {{{1 c
-*1: aurum://diff:%TMPDIR%/test/annotatemapsrepo:fe851681c15eb282a18ab7660f85a677ee1e577c:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:chgrepo.zsh
+*1: aurum://diff:%TMPDIR%/test/annotatemapsrepo:dfe39aa48c6ddde158e42217548b531a45ff66e9:5a6a1bf999fad1f4547eeb887af54f31d11833f2:chgrepo.zsh
 {{{1 gd
-*1: aurum://diff:%TMPDIR%/test/annotatemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1::
+*1: aurum://diff:%TMPDIR%/test/annotatemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2::
 {{{1 gc
-*1: aurum://diff:%TMPDIR%/test/annotatemapsrepo:fe851681c15eb282a18ab7660f85a677ee1e577c:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:
+*1: aurum://diff:%TMPDIR%/test/annotatemapsrepo:dfe39aa48c6ddde158e42217548b531a45ff66e9:5a6a1bf999fad1f4547eeb887af54f31d11833f2:
 {{{1 K/J
-#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:e2b6fb70c2c7d6bd3f1d5bff65a7de6681976743:chgrepo.zsh
-*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:e2b6fb70c2c7d6bd3f1d5bff65a7de6681976743:chgrepo.zsh
-#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:235d6a7d7b435cd3452b4c84f74fe9bad4b91a59:chgrepo.zsh
-*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:235d6a7d7b435cd3452b4c84f74fe9bad4b91a59:chgrepo.zsh
+#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:0e6e0adf281b423193f9dce097ab1df4f91215f7:chgrepo.zsh
+*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:0e6e0adf281b423193f9dce097ab1df4f91215f7:chgrepo.zsh
+#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:c4110a066208167dae46b08f4e0d8d2b37e842f3:chgrepo.zsh
+*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:c4110a066208167dae46b08f4e0d8d2b37e842f3:chgrepo.zsh
 {{{1 2K/2J
-#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:e2b6fb70c2c7d6bd3f1d5bff65a7de6681976743:chgrepo.zsh
-*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:e2b6fb70c2c7d6bd3f1d5bff65a7de6681976743:chgrepo.zsh
-#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:5c5f63aea57fbe740977648a1315f3369cb43663:chgrepo.zsh
-*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:5c5f63aea57fbe740977648a1315f3369cb43663:chgrepo.zsh
+#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:0e6e0adf281b423193f9dce097ab1df4f91215f7:chgrepo.zsh
+*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:0e6e0adf281b423193f9dce097ab1df4f91215f7:chgrepo.zsh
+#1: aurum://annotate:%TMPDIR%/test/annotatemapsrepo:250ba7cd831ee91c3ba5bef1faebc38c5dbca5f8:chgrepo.zsh
+*2: aurum://file:%TMPDIR%/test/annotatemapsrepo:250ba7cd831ee91c3ba5bef1faebc38c5dbca5f8:chgrepo.zsh
 {{{1 U
 100
 010

test/audiffmaps.ok

 0
-aurum://diff:%TMPDIR%/test/audiffmapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:fe851681c15eb282a18ab7660f85a677ee1e577c::
-aurum://diff:%TMPDIR%/test/audiffmapsrepo:fe851681c15eb282a18ab7660f85a677ee1e577c:00b61a9315e2ecb239feba3bc44b2ef3af4c7dd1::
-aurum://diff:%TMPDIR%/test/audiffmapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:fe851681c15eb282a18ab7660f85a677ee1e577c::
+aurum://diff:%TMPDIR%/test/audiffmapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:dfe39aa48c6ddde158e42217548b531a45ff66e9::
+aurum://diff:%TMPDIR%/test/audiffmapsrepo:dfe39aa48c6ddde158e42217548b531a45ff66e9:99ea42d70fbe32af955de907352999b1d94bef5f::
+aurum://diff:%TMPDIR%/test/audiffmapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:dfe39aa48c6ddde158e42217548b531a45ff66e9::
 1
-aurum://diff:%TMPDIR%/test/audiffmapsrepo:aa37b7dd6c397b16a77b1f405d49828aa6434bb2:ccf3e1d041800ad99d46dcdec6e12c8a770456f9:datelines.lst;hglines.lst:
-=aurum://diff:%TMPDIR%/test/audiffmapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:fe851681c15eb282a18ab7660f85a677ee1e577c::
-*1: aurum://diff:%TMPDIR%/test/audiffmapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:fe851681c15eb282a18ab7660f85a677ee1e577c::
-#2: aurum://diff:%TMPDIR%/test/audiffmapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:fe851681c15eb282a18ab7660f85a677ee1e577c::
-aurum://file:%TMPDIR%/test/audiffmapsrepo:aa37b7dd6c397b16a77b1f405d49828aa6434bb2:hglines.lst
+aurum://diff:%TMPDIR%/test/audiffmapsrepo:7e16e7cbaf9ec5b0e65832bc6f057ba825c38cac:a16a47a8d7aafc115651bfee6f1202093765365d:datelines.lst;hglines.lst:
+=aurum://diff:%TMPDIR%/test/audiffmapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:dfe39aa48c6ddde158e42217548b531a45ff66e9::
+*1: aurum://diff:%TMPDIR%/test/audiffmapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:dfe39aa48c6ddde158e42217548b531a45ff66e9::
+#2: aurum://diff:%TMPDIR%/test/audiffmapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:dfe39aa48c6ddde158e42217548b531a45ff66e9::
+aurum://file:%TMPDIR%/test/audiffmapsrepo:7e16e7cbaf9ec5b0e65832bc6f057ba825c38cac:hglines.lst
 %TMPDIR%/test/audiffmapsrepo/crepo.zsh
 2
 %TMPDIR%/test/audiffmapsrepo/crepo.zsh
-aurum://file:%TMPDIR%/test/audiffmapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+aurum://file:%TMPDIR%/test/audiffmapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh

test/aufilemaps.ok

 0
-aurum://file:%TMPDIR%/test/aufilemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
-aurum://file:%TMPDIR%/test/aufilemapsrepo:fe851681c15eb282a18ab7660f85a677ee1e577c:crepo.zsh
-aurum://file:%TMPDIR%/test/aufilemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+aurum://file:%TMPDIR%/test/aufilemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
+aurum://file:%TMPDIR%/test/aufilemapsrepo:dfe39aa48c6ddde158e42217548b531a45ff66e9:crepo.zsh
+aurum://file:%TMPDIR%/test/aufilemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 1
-aurum://file:%TMPDIR%/test/aufilemapsrepo:54d2db605eec15091bb4b194499d6db40e2af027:chgrepo.zsh
-=aurum://file:%TMPDIR%/test/aufilemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
-*1: aurum://file:%TMPDIR%/test/aufilemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
-#2: aurum://file:%TMPDIR%/test/aufilemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
-aurum://diff:%TMPDIR%/test/aufilemapsrepo::41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1::
-aurum://diff:%TMPDIR%/test/aufilemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:fe851681c15eb282a18ab7660f85a677ee1e577c::
+aurum://file:%TMPDIR%/test/aufilemapsrepo:df55ab32bcfa13929c53541c105b2b20972cb51b:chgrepo.zsh
+=aurum://file:%TMPDIR%/test/aufilemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
+*1: aurum://file:%TMPDIR%/test/aufilemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
+#2: aurum://file:%TMPDIR%/test/aufilemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
+aurum://diff:%TMPDIR%/test/aufilemapsrepo::5a6a1bf999fad1f4547eeb887af54f31d11833f2::
+aurum://diff:%TMPDIR%/test/aufilemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:dfe39aa48c6ddde158e42217548b531a45ff66e9::
 ::: D
 *1: %TMPDIR%/test/aufilemapsrepo/crepo.zsh
-#2: aurum://file:%TMPDIR%/test/aufilemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+#2: aurum://file:%TMPDIR%/test/aufilemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 ::: C
-#1: aurum://file:%TMPDIR%/test/aufilemapsrepo:fe851681c15eb282a18ab7660f85a677ee1e577c:crepo.zsh
-*2: aurum://file:%TMPDIR%/test/aufilemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+#1: aurum://file:%TMPDIR%/test/aufilemapsrepo:dfe39aa48c6ddde158e42217548b531a45ff66e9:crepo.zsh
+*2: aurum://file:%TMPDIR%/test/aufilemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 ::: ,X
-*1: aurum://file:%TMPDIR%/test/aufilemapsrepo:41c3d8d71ffecac8d1d2e4ac56b8a36c038290e1:crepo.zsh
+*1: aurum://file:%TMPDIR%/test/aufilemapsrepo:5a6a1bf999fad1f4547eeb887af54f31d11833f2:crepo.zsh
 {{{1
-@  Changeset 23
+@  Changeset 27
 |  Tags: tip
 |  @ Multiline
 |  @ commit
 |  @ comment
 {{{1 ,i mapping
-@  Changeset 24
+@  Changeset 28
 |  Tags: tip
 |  @ Jkl
 {{{1 ,X mapping
-@  Changeset 24
+@  Changeset 28
 |  Tags: tip
 |  @ Jkl
 {{{1 message
-@  Changeset 25
+@  Changeset 29
 |  Tags: tip
 |  @ Def ghi
 {{{1 message+user+date
-@  Changeset 26
+@  Changeset 30
 |  Commited 11 Aug 2007 06:00 by A <a@example.com>
 |  Tags: tip
 |  @ Def ghi
 {{{1 files
-@  Changeset 27
+@  Changeset 31
 |  Tags: tip
 |  @ Pqr
 >>> Messages:

test/createrepo.zsh

 #!/bin/zsh
 emulate -L zsh
-set -e
 local A='A <a@example.com>'
 local B='B <b@example.org>'
 local C='C <c@example.gov>'
+local -x HGRCPATH=''
+. virtualenvwrapper.sh
 (
-    # TODO two tags on one revision
-    # TODO merges with merge conflicts
-    # TODO copy during merge
-    set -e
+    workon mercurial-1.2
     hg init testrepo
     cd testrepo
-    cp ../createrepo.zsh .
+    deactivate
+    hg cat -R ../.. ../createrepo.zsh -r 71 > createrepo.zsh
+    workon mercurial-1.2
+    set -e
+    set -x
     # XXX Date test will work only till 2099
     hg commit -A -m 'Added «createrepo.zsh»' \
         --date '1999-01-02 5:20' --user $A
     seq 1 10 | tr ' ' $'\n' > ignored10.lst
     hg commit -A -m 'Added ignored10.lst' \
         --date '2002-02-11 03:15' --user $A
+    hg tag -r clines oldtag \
+        --date '2002-02-11 03:16' --user $A
+    cat chgrepo.zsh | grep 'e' > elines.lst
+    cat chgrepo.zsh | grep 'f' > flines.lst
+    cat chgrepo.zsh | grep 'g' > glines.lst
+    hg commit -A -m 'Added elines.lst, flines.lst and glines.lst' \
+        --date '2002-02-11 04:15' --user $A
+    hg update -r -2
+    cat chgrepo.zsh | grep 'ep' > elines.lst
+    cat chgrepo.zsh | grep 'fr' > flines.lst
+    cat chgrepo.zsh | grep 'gr' > glines.lst
+    hg commit -A -m $'Added elines.lst with eplines\nAdded flines.lst with frlines\nAdded glines.lst with grlines' \
+        --date '2002-02-11 04:15' --user $A
+    hg merge || true # Merge must fail
+    rm *.orig
+    hg mv elines.lst emerged.lst
+    hg rm -f flines.lst
+    hg cp glines.lst glinescopy.lst
+    hg resolve --mark --all
+    hg commit -m 'Merge' \
+        --date '2002-02-11 05:00' --user $C
     echo $'syntax: glob\nignored*' > .hgignore
     hg commit -A -m 'Added .hgignore' \
         --date '2002-02-11 05:43' --user $A
 :call WriteFile('w$: '.winnr('$'))
 :bwipeout!
 :W{{{1 changes
-:Run AuDiff changes -2
+:Run AuDiff changes 21
 :bwipeout!
 :W{{{1 rev1
-:Run AuDiff rev1 -2
+:Run AuDiff rev1 21
 :bwipeout!
 :W{{{1 rev2
 :Run AuDiff rev2 -1
 :bwipeout!
 :W{{{1 rev1 + rev2
-:Run AuDiff rev1 -2 rev2 -1
+:Run AuDiff rev1 21 rev2 -1
 :bwipeout!
 :W{{{1 rev1 + rev2 + reverse
-:Run AuDiff rev1 -2 rev2 -1 reverse
+:Run AuDiff rev1 21 rev2 -1 reverse
 :bwipeout!
 :W{{{1 numlines
 :Run AuDiff rev1 2 numlines 0
 {{{1
-diff -r 54d2db605eec addeddef
+diff -r df55ab32bcfa addeddef
 --- /dev/null
 +++ b/addeddef
 @@ -0,0 +1,1 @@
 +Def
-diff -r 54d2db605eec hglines2.lst
+diff -r df55ab32bcfa hglines2.lst
 --- a/hglines2.lst
 +++ /dev/null
 @@ -1,41 +0,0 @@
 -    hg commit -A -m 'Added ignored10.lst' \
 -    hg commit -A -m 'Added .hgignore' \
 -    hg rm hglines2.lst
-diff -r 54d2db605eec nohglinesrev.lst
+diff -r df55ab32bcfa nohglinesrev.lst
 --- a/nohglinesrev.lst
 +++ b/nohglinesrev.lst
 @@ -51,3 +51,4 @@
 +abc
 w$: 1
 {{{1 cmd
-diff -r 54d2db605eec addeddef
+diff -r df55ab32bcfa addeddef
 --- /dev/null
 +++ b/addeddef
 @@ -0,0 +1,1 @@
 +Def
-diff -r 54d2db605eec hglines2.lst
+diff -r df55ab32bcfa hglines2.lst
 --- a/hglines2.lst
 +++ /dev/null
 @@ -1,41 +0,0 @@
 -    hg commit -A -m 'Added ignored10.lst' \
 -    hg commit -A -m 'Added .hgignore' \
 -    hg rm hglines2.lst
-diff -r 54d2db605eec nohglinesrev.lst
+diff -r df55ab32bcfa nohglinesrev.lst
 --- a/nohglinesrev.lst
 +++ b/nohglinesrev.lst
 @@ -51,3 +51,4 @@
 +abc
 w$: 2
 {{{1 changes
-diff -r 2c2d8b2b8164 -r 214bbd7a8f11 ignored10.lst
+diff -r 67cf252de26b -r e85aa09aab16 ignored10.lst
 --- /dev/null
 +++ b/ignored10.lst
 @@ -0,0 +1,10 @@
 +9
 +10
 {{{1 rev1
-diff -r 2c2d8b2b8164 -r 214bbd7a8f11 ignored10.lst
+diff -r 67cf252de26b -r e85aa09aab16 ignored10.lst
 --- /dev/null
 +++ b/ignored10.lst
 @@ -0,0 +1,10 @@
 +9
 +10
 {{{1 rev2
-diff -r 54d2db605eec addeddef
+diff -r df55ab32bcfa addeddef
 --- /dev/null
 +++ b/addeddef
 @@ -0,0 +1,1 @@
 +Def
-diff -r 54d2db605eec hglines2.lst
+diff -r df55ab32bcfa hglines2.lst
 --- a/hglines2.lst
 +++ /dev/null
 @@ -1,41 +0,0 @@
 -    hg commit -A -m 'Added ignored10.lst' \
 -    hg commit -A -m 'Added .hgignore' \
 -    hg rm hglines2.lst
-diff -r 54d2db605eec nohglinesrev.lst
+diff -r df55ab32bcfa nohglinesrev.lst
 --- a/nohglinesrev.lst
 +++ b/nohglinesrev.lst
 @@ -51,3 +51,4 @@
  opertset zx.rat.opertset fJc rat
 +abc
 {{{1 rev1 + rev2
-diff -r 54d2db605eec -r 214bbd7a8f11 .hgignore
+diff -r df55ab32bcfa -r e85aa09aab16 .hgignore
 --- a/.hgignore
 +++ /dev/null
 @@ -1,2 +0,0 @@
 -syntax: glob
 -ignored*
+diff -r df55ab32bcfa -r e85aa09aab16 .hgtags
+--- a/.hgtags
++++ b/.hgtags
+@@ -1,2 +1,1 @@
+ c06107b7bcbe751d2dd40faf4179ee7d6aac44ac ablines
+-023aa55bd8062179ce36adbdd78363e9b88718c1 oldtag
+diff -r df55ab32bcfa -r e85aa09aab16 emerged.lst
+--- a/emerged.lst
++++ /dev/null
+@@ -1,127 +0,0 @@
+-<<<<<<< local
+-=======
+-emulate -L zsh
+-set -e
+-local A='A <a@example.com>'
+-local B='B <b@example.org>'
+-local C='C <c@example.gov>'
+-    set -e
+->>>>>>> other
+-    hg init testrepo
+-    cd testrepo
+-    cp ../createrepo.zsh .
+-<<<<<<< local
+-=======
+-    # XXX Date test will work only till 2099
+->>>>>>> other
+-    hg commit -A -m 'Added «createrepo.zsh»' \
+-<<<<<<< local
+-=======
+-        --date '1999-01-02 5:20' --user $A
+->>>>>>> other
+-    hg mv createrepo.zsh crepo.zsh
+-    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+-<<<<<<< local
+-=======
+-        --date '2000-01-05 7:30' --user $A
+->>>>>>> other
+-    perl -p -i -e 'tr/{}/{}/' crepo.zsh
+-    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+-<<<<<<< local
+-=======
+-        --date '2000-01-15 15:00' --user $B
+->>>>>>> other
+-    hg mv crepo.zsh chgrepo.zsh
+-    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+-<<<<<<< local
+-=======
+-        --date '2000-02-01 14:00' --user $B
+->>>>>>> other
+-    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+-    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+-        --date '2000-05-10 4:23' --user $A
+->>>>>>> other
+-    cat chgrepo.zsh | grep 'd' > dlines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added dlines.lst' \
+-        --date '2000-11-01 13:24' --user $B
+->>>>>>> other
+-    cat chgrepo.zsh | grep 'a' > alines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added alines.lst' \
+-        --date '2000-11-02 5:44' --user $A
+->>>>>>> other
+-    cat alines.lst | grep 'b' > ablines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added ablines.lst' \
+-        --date '2000-11-02 14:13' --user $B
+-    hg tag ablines \
+-        --date '2000-11-02 14:14' --user $B
+-    hg update default
+-    hg merge -r ablines
+-    hg commit -m 'Merge from C' \
+-        --date '2001-01-01 00:00' --user $C
+-    hg update C
+->>>>>>> other
+-    cat chgrepo.zsh | grep 'b' > blines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added blines.lst' \
+-        --date '2001-02-01 05:18' --user $A
+-    hg tag blines \
+-        --date '2001-02-01 05:19' --user $A
+-    hg update -r -2
+->>>>>>> other
+-    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added clines.lst' \
+-        --date '2001-02-01 14:56' --user $B
+-    hg tag clines \
+-        --date '2001-02-01 14:56:52' --user $B
+-    hg update A
+-    hg merge -r B
+-    hg commit -m 'Merge from B' \
+-        --date '2002-01-01 00:00' --user $C
+-    hg merge -r clines
+-    hg commit -m 'Merge from C:2' \
+-        --date '2002-01-01 00:00:15' --user $C
+-    hg update default
+-    hg merge -r blines
+-    hg commit -m 'Merge from C:1' \
+-        --date '2002-01-01 00:00:30' --user $C
+-    hg merge -r A
+-    hg commit -m 'Merge from A' \
+-        --date '2002-01-01 00:00:45' --user $C
+-    hg cp hglines.lst hglines2.lst
+-    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+-        --date '2002-02-10 05:00' --user $A
+->>>>>>> other
+-    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added nohglines.lst' \
+-        --date '2002-02-10 15:33' --user $B
+-    cat nohglines.lst | rev > nohglinesrev.lst
+-    hg commit -A -m 'Added nohglinesrev.lst' \
+-        --date '2002-02-10 16:01' --user $B
+-    seq 1 10 | tr ' ' $'\n' > ignored10.lst
+-    hg commit -A -m 'Added ignored10.lst' \
+-        --date '2002-02-11 03:15' --user $A
+-    echo $'syntax: glob\nignored*' > .hgignore
+-    hg commit -A -m 'Added .hgignore' \
+-        --date '2002-02-11 05:43' --user $A
+-    echo abc >> nohglinesrev.lst
+-    echo 'Def' > addeddef && hg add addeddef
+-    hg rm hglines2.lst
+-    rm nohglines.lst
+-    cat hglines.lst | rev > hglinesrev.lst
+-    echo 'Abc' > ignoredabc
+->>>>>>> other
+-tar cJf testrepo.tar.xz testrepo
+diff -r df55ab32bcfa -r e85aa09aab16 glines.lst
+--- a/glines.lst
++++ /dev/null
+@@ -1,83 +0,0 @@
+-<<<<<<< local
+-=======
+-local B='B <b@example.org>'
+-local C='C <c@example.gov>'
+-    hg init testrepo
+-    hg commit -A -m 'Added «createrepo.zsh»' \
+-    hg mv createrepo.zsh crepo.zsh
+-    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+-    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+->>>>>>> other
+-    hg mv crepo.zsh chgrepo.zsh
+-    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+-    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+-    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+-    hg branch A
+->>>>>>> other
+-    cat chgrepo.zsh | grep 'd' > dlines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added dlines.lst' \
+-    hg branch B
+->>>>>>> other
+-    cat chgrepo.zsh | grep 'a' > alines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added alines.lst' \
+-    hg branch C
+->>>>>>> other
+-    cat alines.lst | grep 'b' > ablines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added ablines.lst' \
+-    hg tag ablines \
+-    hg update default
+-    hg merge -r ablines
+-    hg commit -m 'Merge from C' \
+-    hg update C
+->>>>>>> other
+-    cat chgrepo.zsh | grep 'b' > blines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added blines.lst' \
+-    hg tag blines \
+-    hg update -r -2
+->>>>>>> other
+-    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added clines.lst' \
+-    hg tag clines \
+-    hg update A
+-    hg merge -r B
+-    hg commit -m 'Merge from B' \
+-    hg merge -r clines
+-    hg commit -m 'Merge from C:2' \
+-    hg update default
+-    hg merge -r blines
+-    hg commit -m 'Merge from C:1' \
+-    hg merge -r A
+-    hg commit -m 'Merge from A' \
+-    hg cp hglines.lst hglines2.lst
+-    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+->>>>>>> other
+-    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added nohglines.lst' \
+-    cat nohglines.lst | rev > nohglinesrev.lst
+-    hg commit -A -m 'Added nohglinesrev.lst' \
+-    seq 1 10 | tr ' ' $'\n' > ignored10.lst
+-    hg commit -A -m 'Added ignored10.lst' \
+-    echo $'syntax: glob\nignored*' > .hgignore
+-    hg commit -A -m 'Added .hgignore' \
+-    echo abc >> nohglinesrev.lst
+-    echo 'Def' > addeddef && hg add addeddef
+-    hg rm hglines2.lst
+-    rm nohglines.lst
+-    cat hglines.lst | rev > hglinesrev.lst
+-    echo 'Abc' > ignoredabc
+->>>>>>> other
+diff -r df55ab32bcfa -r e85aa09aab16 glinescopy.lst
+--- a/glinescopy.lst
++++ /dev/null
+@@ -1,83 +0,0 @@
+-<<<<<<< local
+-=======
+-local B='B <b@example.org>'
+-local C='C <c@example.gov>'
+-    hg init testrepo
+-    hg commit -A -m 'Added «createrepo.zsh»' \
+-    hg mv createrepo.zsh crepo.zsh
+-    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+-    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+->>>>>>> other
+-    hg mv crepo.zsh chgrepo.zsh
+-    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+-    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+-    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+-    hg branch A
+->>>>>>> other
+-    cat chgrepo.zsh | grep 'd' > dlines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added dlines.lst' \
+-    hg branch B
+->>>>>>> other
+-    cat chgrepo.zsh | grep 'a' > alines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added alines.lst' \
+-    hg branch C
+->>>>>>> other
+-    cat alines.lst | grep 'b' > ablines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added ablines.lst' \
+-    hg tag ablines \
+-    hg update default
+-    hg merge -r ablines
+-    hg commit -m 'Merge from C' \
+-    hg update C
+->>>>>>> other
+-    cat chgrepo.zsh | grep 'b' > blines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added blines.lst' \
+-    hg tag blines \
+-    hg update -r -2
+->>>>>>> other
+-    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added clines.lst' \
+-    hg tag clines \
+-    hg update A
+-    hg merge -r B
+-    hg commit -m 'Merge from B' \
+-    hg merge -r clines
+-    hg commit -m 'Merge from C:2' \
+-    hg update default
+-    hg merge -r blines
+-    hg commit -m 'Merge from C:1' \
+-    hg merge -r A
+-    hg commit -m 'Merge from A' \
+-    hg cp hglines.lst hglines2.lst
+-    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+->>>>>>> other
+-    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+-<<<<<<< local
+-=======
+-    hg commit -A -m 'Added nohglines.lst' \
+-    cat nohglines.lst | rev > nohglinesrev.lst
+-    hg commit -A -m 'Added nohglinesrev.lst' \
+-    seq 1 10 | tr ' ' $'\n' > ignored10.lst
+-    hg commit -A -m 'Added ignored10.lst' \
+-    echo $'syntax: glob\nignored*' > .hgignore
+-    hg commit -A -m 'Added .hgignore' \
+-    echo abc >> nohglinesrev.lst
+-    echo 'Def' > addeddef && hg add addeddef
+-    hg rm hglines2.lst
+-    rm nohglines.lst
+-    cat hglines.lst | rev > hglinesrev.lst
+-    echo 'Abc' > ignoredabc
+->>>>>>> other
 {{{1 rev1 + rev2 + reverse
-diff -r 214bbd7a8f11 -r 54d2db605eec .hgignore
+diff -r e85aa09aab16 -r df55ab32bcfa .hgignore
 --- /dev/null
 +++ b/.hgignore
 @@ -0,0 +1,2 @@
 +syntax: glob
 +ignored*
+diff -r e85aa09aab16 -r df55ab32bcfa .hgtags
+--- a/.hgtags
++++ b/.hgtags
+@@ -1,1 +1,2 @@
+ c06107b7bcbe751d2dd40faf4179ee7d6aac44ac ablines
++023aa55bd8062179ce36adbdd78363e9b88718c1 oldtag
+diff -r e85aa09aab16 -r df55ab32bcfa emerged.lst
+--- /dev/null
++++ b/emerged.lst
+@@ -0,0 +1,127 @@
++<<<<<<< local
++=======
++emulate -L zsh
++set -e
++local A='A <a@example.com>'
++local B='B <b@example.org>'
++local C='C <c@example.gov>'
++    set -e
++>>>>>>> other
++    hg init testrepo
++    cd testrepo
++    cp ../createrepo.zsh .
++<<<<<<< local
++=======
++    # XXX Date test will work only till 2099
++>>>>>>> other
++    hg commit -A -m 'Added «createrepo.zsh»' \
++<<<<<<< local
++=======
++        --date '1999-01-02 5:20' --user $A
++>>>>>>> other
++    hg mv createrepo.zsh crepo.zsh
++    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
++<<<<<<< local
++=======
++        --date '2000-01-05 7:30' --user $A
++>>>>>>> other
++    perl -p -i -e 'tr/{}/{}/' crepo.zsh
++    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
++<<<<<<< local
++=======
++        --date '2000-01-15 15:00' --user $B
++>>>>>>> other
++    hg mv crepo.zsh chgrepo.zsh
++    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
++<<<<<<< local
++=======
++        --date '2000-02-01 14:00' --user $B
++>>>>>>> other
++    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
++    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
++        --date '2000-05-10 4:23' --user $A
++>>>>>>> other
++    cat chgrepo.zsh | grep 'd' > dlines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added dlines.lst' \
++        --date '2000-11-01 13:24' --user $B
++>>>>>>> other
++    cat chgrepo.zsh | grep 'a' > alines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added alines.lst' \
++        --date '2000-11-02 5:44' --user $A
++>>>>>>> other
++    cat alines.lst | grep 'b' > ablines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added ablines.lst' \
++        --date '2000-11-02 14:13' --user $B
++    hg tag ablines \
++        --date '2000-11-02 14:14' --user $B
++    hg update default
++    hg merge -r ablines
++    hg commit -m 'Merge from C' \
++        --date '2001-01-01 00:00' --user $C
++    hg update C
++>>>>>>> other
++    cat chgrepo.zsh | grep 'b' > blines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added blines.lst' \
++        --date '2001-02-01 05:18' --user $A
++    hg tag blines \
++        --date '2001-02-01 05:19' --user $A
++    hg update -r -2
++>>>>>>> other
++    cat chgrepo.zsh | sort | grep 'c' > clines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added clines.lst' \
++        --date '2001-02-01 14:56' --user $B
++    hg tag clines \
++        --date '2001-02-01 14:56:52' --user $B
++    hg update A
++    hg merge -r B
++    hg commit -m 'Merge from B' \
++        --date '2002-01-01 00:00' --user $C
++    hg merge -r clines
++    hg commit -m 'Merge from C:2' \
++        --date '2002-01-01 00:00:15' --user $C
++    hg update default
++    hg merge -r blines
++    hg commit -m 'Merge from C:1' \
++        --date '2002-01-01 00:00:30' --user $C
++    hg merge -r A
++    hg commit -m 'Merge from A' \
++        --date '2002-01-01 00:00:45' --user $C
++    hg cp hglines.lst hglines2.lst
++    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
++        --date '2002-02-10 05:00' --user $A
++>>>>>>> other
++    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added nohglines.lst' \
++        --date '2002-02-10 15:33' --user $B
++    cat nohglines.lst | rev > nohglinesrev.lst
++    hg commit -A -m 'Added nohglinesrev.lst' \
++        --date '2002-02-10 16:01' --user $B
++    seq 1 10 | tr ' ' $'\n' > ignored10.lst
++    hg commit -A -m 'Added ignored10.lst' \
++        --date '2002-02-11 03:15' --user $A
++    echo $'syntax: glob\nignored*' > .hgignore
++    hg commit -A -m 'Added .hgignore' \
++        --date '2002-02-11 05:43' --user $A
++    echo abc >> nohglinesrev.lst
++    echo 'Def' > addeddef && hg add addeddef
++    hg rm hglines2.lst
++    rm nohglines.lst
++    cat hglines.lst | rev > hglinesrev.lst
++    echo 'Abc' > ignoredabc
++>>>>>>> other
++tar cJf testrepo.tar.xz testrepo
+diff -r e85aa09aab16 -r df55ab32bcfa glines.lst
+--- /dev/null
++++ b/glines.lst
+@@ -0,0 +1,83 @@
++<<<<<<< local
++=======
++local B='B <b@example.org>'
++local C='C <c@example.gov>'
++    hg init testrepo
++    hg commit -A -m 'Added «createrepo.zsh»' \
++    hg mv createrepo.zsh crepo.zsh
++    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
++    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
++>>>>>>> other
++    hg mv crepo.zsh chgrepo.zsh
++    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
++    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
++    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
++    hg branch A
++>>>>>>> other
++    cat chgrepo.zsh | grep 'd' > dlines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added dlines.lst' \
++    hg branch B
++>>>>>>> other
++    cat chgrepo.zsh | grep 'a' > alines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added alines.lst' \
++    hg branch C
++>>>>>>> other
++    cat alines.lst | grep 'b' > ablines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added ablines.lst' \
++    hg tag ablines \
++    hg update default
++    hg merge -r ablines
++    hg commit -m 'Merge from C' \
++    hg update C
++>>>>>>> other
++    cat chgrepo.zsh | grep 'b' > blines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added blines.lst' \
++    hg tag blines \
++    hg update -r -2
++>>>>>>> other
++    cat chgrepo.zsh | sort | grep 'c' > clines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added clines.lst' \
++    hg tag clines \
++    hg update A
++    hg merge -r B
++    hg commit -m 'Merge from B' \
++    hg merge -r clines
++    hg commit -m 'Merge from C:2' \
++    hg update default
++    hg merge -r blines
++    hg commit -m 'Merge from C:1' \
++    hg merge -r A
++    hg commit -m 'Merge from A' \
++    hg cp hglines.lst hglines2.lst
++    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
++>>>>>>> other
++    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added nohglines.lst' \
++    cat nohglines.lst | rev > nohglinesrev.lst
++    hg commit -A -m 'Added nohglinesrev.lst' \
++    seq 1 10 | tr ' ' $'\n' > ignored10.lst
++    hg commit -A -m 'Added ignored10.lst' \
++    echo $'syntax: glob\nignored*' > .hgignore
++    hg commit -A -m 'Added .hgignore' \
++    echo abc >> nohglinesrev.lst
++    echo 'Def' > addeddef && hg add addeddef
++    hg rm hglines2.lst
++    rm nohglines.lst
++    cat hglines.lst | rev > hglinesrev.lst
++    echo 'Abc' > ignoredabc
++>>>>>>> other
+diff -r e85aa09aab16 -r df55ab32bcfa glinescopy.lst
+--- /dev/null
++++ b/glinescopy.lst
+@@ -0,0 +1,83 @@
++<<<<<<< local
++=======
++local B='B <b@example.org>'
++local C='C <c@example.gov>'
++    hg init testrepo
++    hg commit -A -m 'Added «createrepo.zsh»' \
++    hg mv createrepo.zsh crepo.zsh
++    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
++    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
++>>>>>>> other
++    hg mv crepo.zsh chgrepo.zsh
++    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
++    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
++    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
++    hg branch A
++>>>>>>> other
++    cat chgrepo.zsh | grep 'd' > dlines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added dlines.lst' \
++    hg branch B
++>>>>>>> other
++    cat chgrepo.zsh | grep 'a' > alines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added alines.lst' \
++    hg branch C
++>>>>>>> other
++    cat alines.lst | grep 'b' > ablines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added ablines.lst' \
++    hg tag ablines \
++    hg update default
++    hg merge -r ablines
++    hg commit -m 'Merge from C' \
++    hg update C
++>>>>>>> other
++    cat chgrepo.zsh | grep 'b' > blines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added blines.lst' \
++    hg tag blines \
++    hg update -r -2
++>>>>>>> other
++    cat chgrepo.zsh | sort | grep 'c' > clines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added clines.lst' \
++    hg tag clines \
++    hg update A
++    hg merge -r B
++    hg commit -m 'Merge from B' \
++    hg merge -r clines
++    hg commit -m 'Merge from C:2' \
++    hg update default
++    hg merge -r blines
++    hg commit -m 'Merge from C:1' \
++    hg merge -r A
++    hg commit -m 'Merge from A' \
++    hg cp hglines.lst hglines2.lst
++    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
++>>>>>>> other
++    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
++<<<<<<< local
++=======
++    hg commit -A -m 'Added nohglines.lst' \
++    cat nohglines.lst | rev > nohglinesrev.lst
++    hg commit -A -m 'Added nohglinesrev.lst' \
++    seq 1 10 | tr ' ' $'\n' > ignored10.lst
++    hg commit -A -m 'Added ignored10.lst' \
++    echo $'syntax: glob\nignored*' > .hgignore
++    hg commit -A -m 'Added .hgignore' \
++    echo abc >> nohglinesrev.lst
++    echo 'Def' > addeddef && hg add addeddef
++    hg rm hglines2.lst
++    rm nohglines.lst
++    cat hglines.lst | rev > hglinesrev.lst
++    echo 'Abc' > ignoredabc
++>>>>>>> other
 {{{1 numlines
-diff -r fe851681c15e -r 41c3d8d71ffe crepo.zsh
+diff -r dfe39aa48c6d -r 5a6a1bf999fa crepo.zsh
 --- a/crepo.zsh
 +++ b/crepo.zsh
 @@ -7,1 +7,1 @@
 +}
  tar cJf testrepo.tar.xz testrepo
 {{{1 file
-diff -r 54d2db605eec nohglinesrev.lst
+diff -r df55ab32bcfa nohglinesrev.lst
 --- a/nohglinesrev.lst
 +++ b/nohglinesrev.lst
 @@ -51,3 +51,4 @@
  opertset zx.rat.opertset fJc rat
 +abc
 {{{1 file :
-diff -r 54d2db605eec nohglinesrev.lst
+diff -r df55ab32bcfa nohglinesrev.lst
 --- a/nohglinesrev.lst
 +++ b/nohglinesrev.lst
 @@ -51,3 +51,4 @@
-aurum://file:%TMPDIR%/test/filerepo:54d2db605eec15091bb4b194499d6db40e2af027:chgrepo.zsh
-aurum://file:%TMPDIR%/test/filerepo:ccf3e1d041800ad99d46dcdec6e12c8a770456f9:chgrepo.zsh
-aurum://file:%TMPDIR%/test/testrepo:4654f8e4bccd8ba0e40479e6ba7f4a61874bbcb6:dlines.lst
-aurum://file:%TMPDIR%/test/testrepo:4654f8e4bccd8ba0e40479e6ba7f4a61874bbcb6:dlines.lst
+aurum://file:%TMPDIR%/test/filerepo:df55ab32bcfa13929c53541c105b2b20972cb51b:chgrepo.zsh
+aurum://file:%TMPDIR%/test/filerepo:a16a47a8d7aafc115651bfee6f1202093765365d:chgrepo.zsh
+aurum://file:%TMPDIR%/test/testrepo:d760b0fe4fe45adf585f5030181b8081899e26a9:dlines.lst
+aurum://file:%TMPDIR%/test/testrepo:d760b0fe4fe45adf585f5030181b8081899e26a9:dlines.lst
 w$: 1
-aurum://file:%TMPDIR%/test/testrepo:5cd1070d0a3933f74c9d34e7f5e515d20931bccc:dlines.lst
+aurum://file:%TMPDIR%/test/testrepo:9fe0c28c3e1dd175e8372b742f13cbb7bd6799fe:dlines.lst
 w$: 2; l$: 52
-aurum://file:%TMPDIR%/test/testrepo:5cd1070d0a3933f74c9d34e7f5e515d20931bccc:dlines.lst
+aurum://file:%TMPDIR%/test/testrepo:9fe0c28c3e1dd175e8372b742f13cbb7bd6799fe:dlines.lst
 l$: 94
 {{{1 A\b
+emerged.lst|5| local A='A <a@example.com>'
+emerged.lst|17| hg commit -A -m 'Added «createrepo.zsh»' \
+emerged.lst|20| --date '1999-01-02 5:20' --user $A
+emerged.lst|23| hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+emerged.lst|26| --date '2000-01-05 7:30' --user $A
+emerged.lst|35| hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+emerged.lst|44| hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+emerged.lst|45| --date '2000-05-10 4:23' --user $A
+emerged.lst|50| hg commit -A -m 'Added dlines.lst' \
+emerged.lst|56| hg commit -A -m 'Added alines.lst' \
+emerged.lst|57| --date '2000-11-02 5:44' --user $A
+emerged.lst|62| hg commit -A -m 'Added ablines.lst' \
+emerged.lst|75| hg commit -A -m 'Added blines.lst' \
+emerged.lst|76| --date '2001-02-01 05:18' --user $A
+emerged.lst|78| --date '2001-02-01 05:19' --user $A
+emerged.lst|84| hg commit -A -m 'Added clines.lst' \
+emerged.lst|88| hg update A
+emerged.lst|99| hg merge -r A
+emerged.lst|100| hg commit -m 'Merge from A' \
+emerged.lst|103| hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+emerged.lst|104| --date '2002-02-10 05:00' --user $A
+emerged.lst|109| hg commit -A -m 'Added nohglines.lst' \
+emerged.lst|112| hg commit -A -m 'Added nohglinesrev.lst' \
+emerged.lst|115| hg commit -A -m 'Added ignored10.lst' \
+emerged.lst|116| --date '2002-02-11 03:15' --user $A
+emerged.lst|118| hg commit -A -m 'Added .hgignore' \
+emerged.lst|119| --date '2002-02-11 05:43' --user $A
+glines.lst|6| hg commit -A -m 'Added «createrepo.zsh»' \
+glines.lst|8| hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+glines.lst|12| hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+glines.lst|17| hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+glines.lst|18| hg branch A
+glines.lst|23| hg commit -A -m 'Added dlines.lst' \
+glines.lst|29| hg commit -A -m 'Added alines.lst' \
+glines.lst|35| hg commit -A -m 'Added ablines.lst' \
+glines.lst|45| hg commit -A -m 'Added blines.lst' \
+glines.lst|52| hg commit -A -m 'Added clines.lst' \
+glines.lst|54| hg update A
+glines.lst|62| hg merge -r A
+glines.lst|63| hg commit -m 'Merge from A' \
+glines.lst|65| hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+glines.lst|70| hg commit -A -m 'Added nohglines.lst' \
+glines.lst|72| hg commit -A -m 'Added nohglinesrev.lst' \
+glines.lst|74| hg commit -A -m 'Added ignored10.lst' \
+glines.lst|76| hg commit -A -m 'Added .hgignore' \
+glinescopy.lst|6| hg commit -A -m 'Added «createrepo.zsh»' \
+glinescopy.lst|8| hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+glinescopy.lst|12| hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+glinescopy.lst|17| hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+glinescopy.lst|18| hg branch A
+glinescopy.lst|23| hg commit -A -m 'Added dlines.lst' \
+glinescopy.lst|29| hg commit -A -m 'Added alines.lst' \
+glinescopy.lst|35| hg commit -A -m 'Added ablines.lst' \
+glinescopy.lst|45| hg commit -A -m 'Added blines.lst' \
+glinescopy.lst|52| hg commit -A -m 'Added clines.lst' \
+glinescopy.lst|54| hg update A
+glinescopy.lst|62| hg merge -r A
+glinescopy.lst|63| hg commit -m 'Merge from A' \
+glinescopy.lst|65| hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+glinescopy.lst|70| hg commit -A -m 'Added nohglines.lst' \
+glinescopy.lst|72| hg commit -A -m 'Added nohglinesrev.lst' \
+glinescopy.lst|74| hg commit -A -m 'Added ignored10.lst' \
+glinescopy.lst|76| hg commit -A -m 'Added .hgignore' \
+aurum://file:%TMPDIR%/test/greprepo:24:flines.lst|5| hg commit -m 'Merge from A' \
 nohglinesrev.lst|4| '>moc.elpmaxe@a< A'=A lacol
 nohglinesrev.lst|12| A$ resu-- '02:5 20-10-9991' etad--        
 nohglinesrev.lst|13| A$ resu-- '03:7 50-10-0002' etad--        
 chgrepo.zsh|85| hg commit -A -m 'Added .hgignore' \
 chgrepo.zsh|86| --date '2002-02-11 05:43' --user $A
 {{{1 a\b ignorecase
+emerged.lst|5| local A='A <a@example.com>'
+emerged.lst|17| hg commit -A -m 'Added «createrepo.zsh»' \
+emerged.lst|20| --date '1999-01-02 5:20' --user $A
+emerged.lst|23| hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+emerged.lst|26| --date '2000-01-05 7:30' --user $A
+emerged.lst|35| hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+emerged.lst|44| hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+emerged.lst|45| --date '2000-05-10 4:23' --user $A
+emerged.lst|50| hg commit -A -m 'Added dlines.lst' \
+emerged.lst|53| cat chgrepo.zsh | grep 'a' > alines.lst
+emerged.lst|56| hg commit -A -m 'Added alines.lst' \
+emerged.lst|57| --date '2000-11-02 5:44' --user $A
+emerged.lst|62| hg commit -A -m 'Added ablines.lst' \
+emerged.lst|75| hg commit -A -m 'Added blines.lst' \
+emerged.lst|76| --date '2001-02-01 05:18' --user $A
+emerged.lst|78| --date '2001-02-01 05:19' --user $A
+emerged.lst|84| hg commit -A -m 'Added clines.lst' \
+emerged.lst|88| hg update A
+emerged.lst|99| hg merge -r A
+emerged.lst|100| hg commit -m 'Merge from A' \
+emerged.lst|103| hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+emerged.lst|104| --date '2002-02-10 05:00' --user $A
+emerged.lst|109| hg commit -A -m 'Added nohglines.lst' \
+emerged.lst|112| hg commit -A -m 'Added nohglinesrev.lst' \
+emerged.lst|115| hg commit -A -m 'Added ignored10.lst' \
+emerged.lst|116| --date '2002-02-11 03:15' --user $A
+emerged.lst|118| hg commit -A -m 'Added .hgignore' \
+emerged.lst|119| --date '2002-02-11 05:43' --user $A
+glines.lst|6| hg commit -A -m 'Added «createrepo.zsh»' \
+glines.lst|8| hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+glines.lst|12| hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+glines.lst|17| hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+glines.lst|18| hg branch A
+glines.lst|23| hg commit -A -m 'Added dlines.lst' \
+glines.lst|26| cat chgrepo.zsh | grep 'a' > alines.lst
+glines.lst|29| hg commit -A -m 'Added alines.lst' \
+glines.lst|35| hg commit -A -m 'Added ablines.lst' \
+glines.lst|45| hg commit -A -m 'Added blines.lst' \
+glines.lst|52| hg commit -A -m 'Added clines.lst' \
+glines.lst|54| hg update A
+glines.lst|62| hg merge -r A
+glines.lst|63| hg commit -m 'Merge from A' \
+glines.lst|65| hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+glines.lst|70| hg commit -A -m 'Added nohglines.lst' \
+glines.lst|72| hg commit -A -m 'Added nohglinesrev.lst' \
+glines.lst|74| hg commit -A -m 'Added ignored10.lst' \
+glines.lst|76| hg commit -A -m 'Added .hgignore' \
+glinescopy.lst|6| hg commit -A -m 'Added «createrepo.zsh»' \
+glinescopy.lst|8| hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+glinescopy.lst|12| hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+glinescopy.lst|17| hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+glinescopy.lst|18| hg branch A
+glinescopy.lst|23| hg commit -A -m 'Added dlines.lst' \
+glinescopy.lst|26| cat chgrepo.zsh | grep 'a' > alines.lst
+glinescopy.lst|29| hg commit -A -m 'Added alines.lst' \
+glinescopy.lst|35| hg commit -A -m 'Added ablines.lst' \
+glinescopy.lst|45| hg commit -A -m 'Added blines.lst' \
+glinescopy.lst|52| hg commit -A -m 'Added clines.lst' \
+glinescopy.lst|54| hg update A
+glinescopy.lst|62| hg merge -r A
+glinescopy.lst|63| hg commit -m 'Merge from A' \
+glinescopy.lst|65| hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+glinescopy.lst|70| hg commit -A -m 'Added nohglines.lst' \
+glinescopy.lst|72| hg commit -A -m 'Added nohglinesrev.lst' \
+glinescopy.lst|74| hg commit -A -m 'Added ignored10.lst' \
+glinescopy.lst|76| hg commit -A -m 'Added .hgignore' \
+aurum://file:%TMPDIR%/test/greprepo:24:flines.lst|5| hg commit -m 'Merge from A' \
 nohglinesrev.lst|4| '>moc.elpmaxe@a< A'=A lacol
 nohglinesrev.lst|12| A$ resu-- '02:5 20-10-9991' etad--        
 nohglinesrev.lst|13| A$ resu-- '03:7 50-10-0002' etad--        
 blines.lst|3| hg branch A
 blines.lst|7| hg commit -A -m 'Added ablines.lst' \
 blines.lst|11| hg commit -A -m 'Added blines.lst' \
-.hgtags|1| 0b4ef1ee673d958bfa691f07fdbb4369b24904fa ablines
 ablines.lst|2| hg branch A
 ablines.lst|6| hg commit -A -m 'Added ablines.lst' \
 alines.lst|2| local A='A <a@example.com>'
 chgrepo.zsh|85| hg commit -A -m 'Added .hgignore' \
 chgrepo.zsh|86| --date '2002-02-11 05:43' --user $A
 {{{1 a\b noignorecase
+emerged.lst|5| local A='A <a@example.com>'
+emerged.lst|53| cat chgrepo.zsh | grep 'a' > alines.lst
+glines.lst|26| cat chgrepo.zsh | grep 'a' > alines.lst
+glinescopy.lst|26| cat chgrepo.zsh | grep 'a' > alines.lst
 nohglinesrev.lst|4| '>moc.elpmaxe@a< A'=A lacol
 nohglinesrev.lst|22| tsl.senila > 'a' perg | hsz.operghc tac    
 nohglinesrev.lst|24| tsl.senilba > 'b' perg | tsl.senila tac    
 nohglines.lst|22| cat chgrepo.zsh | grep 'a' > alines.lst
 clines.lst|2| cat chgrepo.zsh | grep 'a' > alines.lst
 clines.lst|45| local A='A <a@example.com>'
-.hgtags|1| 0b4ef1ee673d958bfa691f07fdbb4369b24904fa ablines
 alines.lst|2| local A='A <a@example.com>'
 alines.lst|24| cat chgrepo.zsh | grep 'a' > alines.lst
 chgrepo.zsh|4| local A='A <a@example.com>'
 blines.lst|7| hg commit -A -m 'Added ablines.lst' \
 blines.lst|11| hg commit -A -m 'Added blines.lst' \
 {{{1 A\b repo ../testrepo
+%TMPDIR%/test/testrepo/emerged.lst|5| local A='A <a@example.com>'
+%TMPDIR%/test/testrepo/emerged.lst|17| hg commit -A -m 'Added «createrepo.zsh»' \
+%TMPDIR%/test/testrepo/emerged.lst|20| --date '1999-01-02 5:20' --user $A
+%TMPDIR%/test/testrepo/emerged.lst|23| hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+%TMPDIR%/test/testrepo/emerged.lst|26| --date '2000-01-05 7:30' --user $A
+%TMPDIR%/test/testrepo/emerged.lst|35| hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+%TMPDIR%/test/testrepo/emerged.lst|44| hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+%TMPDIR%/test/testrepo/emerged.lst|45| --date '2000-05-10 4:23' --user $A
+%TMPDIR%/test/testrepo/emerged.lst|50| hg commit -A -m 'Added dlines.lst' \
+%TMPDIR%/test/testrepo/emerged.lst|56| hg commit -A -m 'Added alines.lst' \
+%TMPDIR%/test/testrepo/emerged.lst|57| --date '2000-11-02 5:44' --user $A
+%TMPDIR%/test/testrepo/emerged.lst|62| hg commit -A -m 'Added ablines.lst' \
+%TMPDIR%/test/testrepo/emerged.lst|75| hg commit -A -m 'Added blines.lst' \
+%TMPDIR%/test/testrepo/emerged.lst|76| --date '2001-02-01 05:18' --user $A
+%TMPDIR%/test/testrepo/emerged.lst|78| --date '2001-02-01 05:19' --user $A
+%TMPDIR%/test/testrepo/emerged.lst|84| hg commit -A -m 'Added clines.lst' \
+%TMPDIR%/test/testrepo/emerged.lst|88| hg update A
+%TMPDIR%/test/testrepo/emerged.lst|99| hg merge -r A
+%TMPDIR%/test/testrepo/emerged.lst|100| hg commit -m 'Merge from A' \
+%TMPDIR%/test/testrepo/emerged.lst|103| hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+%TMPDIR%/test/testrepo/emerged.lst|104| --date '2002-02-10 05:00' --user $A
+%TMPDIR%/test/testrepo/emerged.lst|109| hg commit -A -m 'Added nohglines.lst' \
+%TMPDIR%/test/testrepo/emerged.lst|112| hg commit -A -m 'Added nohglinesrev.lst' \
+%TMPDIR%/test/testrepo/emerged.lst|115| hg commit -A -m 'Added ignored10.lst' \
+%TMPDIR%/test/testrepo/emerged.lst|116| --date '2002-02-11 03:15' --user $A
+%TMPDIR%/test/testrepo/emerged.lst|118| hg commit -A -m 'Added .hgignore' \
+%TMPDIR%/test/testrepo/emerged.lst|119| --date '2002-02-11 05:43' --user $A
+%TMPDIR%/test/testrepo/glines.lst|6| hg commit -A -m 'Added «createrepo.zsh»' \
+%TMPDIR%/test/testrepo/glines.lst|8| hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+%TMPDIR%/test/testrepo/glines.lst|12| hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+%TMPDIR%/test/testrepo/glines.lst|17| hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+%TMPDIR%/test/testrepo/glines.lst|18| hg branch A
+%TMPDIR%/test/testrepo/glines.lst|23| hg commit -A -m 'Added dlines.lst' \
+%TMPDIR%/test/testrepo/glines.lst|29| hg commit -A -m 'Added alines.lst' \
+%TMPDIR%/test/testrepo/glines.lst|35| hg commit -A -m 'Added ablines.lst' \
+%TMPDIR%/test/testrepo/glines.lst|45| hg commit -A -m 'Added blines.lst' \
+%TMPDIR%/test/testrepo/glines.lst|52| hg commit -A -m 'Added clines.lst' \
+%TMPDIR%/test/testrepo/glines.lst|54| hg update A
+%TMPDIR%/test/testrepo/glines.lst|62| hg merge -r A
+%TMPDIR%/test/testrepo/glines.lst|63| hg commit -m 'Merge from A' \
+%TMPDIR%/test/testrepo/glines.lst|65| hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+%TMPDIR%/test/testrepo/glines.lst|70| hg commit -A -m 'Added nohglines.lst' \
+%TMPDIR%/test/testrepo/glines.lst|72| hg commit -A -m 'Added nohglinesrev.lst' \
+%TMPDIR%/test/testrepo/glines.lst|74| hg commit -A -m 'Added ignored10.lst' \
+%TMPDIR%/test/testrepo/glines.lst|76| hg commit -A -m 'Added .hgignore' \
+%TMPDIR%/test/testrepo/glinescopy.lst|6| hg commit -A -m 'Added «createrepo.zsh»' \
+%TMPDIR%/test/testrepo/glinescopy.lst|8| hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+%TMPDIR%/test/testrepo/glinescopy.lst|12| hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+%TMPDIR%/test/testrepo/glinescopy.lst|17| hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+%TMPDIR%/test/testrepo/glinescopy.lst|18| hg branch A
+%TMPDIR%/test/testrepo/glinescopy.lst|23| hg commit -A -m 'Added dlines.lst' \
+%TMPDIR%/test/testrepo/glinescopy.lst|29| hg commit -A -m 'Added alines.lst' \
+%TMPDIR%/test/testrepo/glinescopy.lst|35| hg commit -A -m 'Added ablines.lst' \
+%TMPDIR%/test/testrepo/glinescopy.lst|45| hg commit -A -m 'Added blines.lst' \
+%TMPDIR%/test/testrepo/glinescopy.lst|52| hg commit -A -m 'Added clines.lst' \
+%TMPDIR%/test/testrepo/glinescopy.lst|54| hg update A
+%TMPDIR%/test/testrepo/glinescopy.lst|62| hg merge -r A
+%TMPDIR%/test/testrepo/glinescopy.lst|63| hg commit -m 'Merge from A' \
+%TMPDIR%/test/testrepo/glinescopy.lst|65| hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+%TMPDIR%/test/testrepo/glinescopy.lst|70| hg commit -A -m 'Added nohglines.lst' \
+%TMPDIR%/test/testrepo/glinescopy.lst|72| hg commit -A -m 'Added nohglinesrev.lst' \
+%TMPDIR%/test/testrepo/glinescopy.lst|74| hg commit -A -m 'Added ignored10.lst' \
+%TMPDIR%/test/testrepo/glinescopy.lst|76| hg commit -A -m 'Added .hgignore' \
+aurum://file:%TMPDIR%/test/testrepo:24:flines.lst|5| hg commit -m 'Merge from A' \
 aurum://file:%TMPDIR%/test/testrepo:20:nohglinesrev.lst|4| '>moc.elpmaxe@a< A'=A lacol
 aurum://file:%TMPDIR%/test/testrepo:20:nohglinesrev.lst|12| A$ resu-- '02:5 20-10-9991' etad--        
 aurum://file:%TMPDIR%/test/testrepo:20:nohglinesrev.lst|13| A$ resu-- '03:7 50-10-0002' etad--        
 C clines.lst
 C datelines.lst
 C dlines.lst
+C emerged.lst
+C glines.lst
+C glinescopy.lst
 C hglines.lst
 C hglines2.lst
 C ignored10.lst
 R clines.lst
 R datelines.lst
 R dlines.lst
+R emerged.lst
+R glines.lst
+R glinescopy.lst
 R hglines.lst
 R hglines2.lst
 R ignored10.lst

test/log-styles.ok

 {{{1 default
-@  Changeset 22:54d2db605eec15091bb4b194499d6db40e2af027
+@  Changeset 26:df55ab32bcfa13929c53541c105b2b20972cb51b
 |  Commited 11 Feb 2002 05:43 by A <a@example.com>
 |  Tags: tip
 |  Files: .hgignore
 |  @ Added .hgignore
 |  $  .hgignore | 2 0
 |  $1 files changed, 2 insertions, 0 deletions
-|  :diff -r 214bbd7a8f11 -r 54d2db605eec .hgignore
+|  :diff -r d8140c0b7b0b -r df55ab32bcfa .hgignore
 |  :--- /dev/null
 |  :+++ b/.hgignore
 |  :@@ -0,0 +1,2 @@
 |  :+ignored*
 |  :
 |  
-o  Changeset 21:214bbd7a8f1198ea9a78a01edf38a3fa8d2ad2ae
+o    Changeset 25:d8140c0b7b0b670bafe0891bcf0c4582092de884
+|\   Commited 11 Feb 2002 05:00 by C <c@example.gov>
+| |  Files: elines.lst, emerged.lst, flines.lst, glines.lst, glinescopy.lst
+| |  Renamed elines.lst to emerged.lst
+| |  Copied glines.lst to glinescopy.lst
+| |  @ Merge
+| |  $  elines.lst     |   0 19
+| |  $  emerged.lst    | 127  0
+| |  $  flines.lst     |   0  5
+| |  $  glines.lst     |  73  0
+| |  $  glinescopy.lst |  83  0
+| |  $5 files changed, 283 insertions, 24 deletions
+| |  :diff -r e021c634413b -r d8140c0b7b0b elines.lst
+| |  :--- a/elines.lst
+| |  :+++ /dev/null
+| |  :@@ -1,19 +0,0 @@
+| |  :-    hg init testrepo
+| |  :-    cd testrepo
+| |  :-    cp ../createrepo.zsh .
+| |  :-    hg commit -A -m 'Added «createrepo.zsh»' \
+| |  :-    hg mv createrepo.zsh crepo.zsh
+| |  :-    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+| |  :-    perl -p -i -e 'tr/{}/{}/' crepo.zsh
+| |  :-    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+| |  :-    hg mv crepo.zsh chgrepo.zsh
+| |  :-    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+| |  :-    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+| |  :-    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+| |  :-    cat chgrepo.zsh | grep 'd' > dlines.lst
+| |  :-    cat chgrepo.zsh | grep 'a' > alines.lst
+| |  :-    cat alines.lst | grep 'b' > ablines.lst
+| |  :-    cat chgrepo.zsh | grep 'b' > blines.lst
+| |  :-    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+| |  :-    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+| |  :-tar cJf testrepo.tar.xz testrepo
+| |  :diff -r e021c634413b -r d8140c0b7b0b emerged.lst
+| |  :--- /dev/null
+| |  :+++ b/emerged.lst
+| |  :@@ -0,0 +1,127 @@
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+emulate -L zsh
+| |  :+set -e
+| |  :+local A='A <a@example.com>'
+| |  :+local B='B <b@example.org>'
+| |  :+local C='C <c@example.gov>'
+| |  :+    set -e
+| |  :+>>>>>>> other
+| |  :+    hg init testrepo
+| |  :+    cd testrepo
+| |  :+    cp ../createrepo.zsh .
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    # XXX Date test will work only till 2099
+| |  :+>>>>>>> other
+| |  :+    hg commit -A -m 'Added «createrepo.zsh»' \
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+        --date '1999-01-02 5:20' --user $A
+| |  :+>>>>>>> other
+| |  :+    hg mv createrepo.zsh crepo.zsh
+| |  :+    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+        --date '2000-01-05 7:30' --user $A
+| |  :+>>>>>>> other
+| |  :+    perl -p -i -e 'tr/{}/{}/' crepo.zsh
+| |  :+    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+        --date '2000-01-15 15:00' --user $B
+| |  :+>>>>>>> other
+| |  :+    hg mv crepo.zsh chgrepo.zsh
+| |  :+    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+        --date '2000-02-01 14:00' --user $B
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+| |  :+        --date '2000-05-10 4:23' --user $A
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | grep 'd' > dlines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added dlines.lst' \
+| |  :+        --date '2000-11-01 13:24' --user $B
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | grep 'a' > alines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added alines.lst' \
+| |  :+        --date '2000-11-02 5:44' --user $A
+| |  :+>>>>>>> other
+| |  :+    cat alines.lst | grep 'b' > ablines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added ablines.lst' \
+| |  :+        --date '2000-11-02 14:13' --user $B
+| |  :+    hg tag ablines \
+| |  :+        --date '2000-11-02 14:14' --user $B
+| |  :+    hg update default
+| |  :+    hg merge -r ablines
+| |  :+    hg commit -m 'Merge from C' \
+| |  :+        --date '2001-01-01 00:00' --user $C
+| |  :+    hg update C
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | grep 'b' > blines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added blines.lst' \
+| |  :+        --date '2001-02-01 05:18' --user $A
+| |  :+    hg tag blines \
+| |  :+        --date '2001-02-01 05:19' --user $A
+| |  :+    hg update -r -2
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added clines.lst' \
+| |  :+        --date '2001-02-01 14:56' --user $B
+| |  :+    hg tag clines \
+| |  :+        --date '2001-02-01 14:56:52' --user $B
+| |  :+    hg update A
+| |  :+    hg merge -r B
+| |  :+    hg commit -m 'Merge from B' \
+| |  :+        --date '2002-01-01 00:00' --user $C
+| |  :+    hg merge -r clines
+| |  :+    hg commit -m 'Merge from C:2' \
+| |  :+        --date '2002-01-01 00:00:15' --user $C
+| |  :+    hg update default
+| |  :+    hg merge -r blines
+| |  :+    hg commit -m 'Merge from C:1' \
+| |  :+        --date '2002-01-01 00:00:30' --user $C
+| |  :+    hg merge -r A
+| |  :+    hg commit -m 'Merge from A' \
+| |  :+        --date '2002-01-01 00:00:45' --user $C
+| |  :+    hg cp hglines.lst hglines2.lst
+| |  :+    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+| |  :+        --date '2002-02-10 05:00' --user $A
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added nohglines.lst' \
+| |  :+        --date '2002-02-10 15:33' --user $B
+| |  :+    cat nohglines.lst | rev > nohglinesrev.lst
+| |  :+    hg commit -A -m 'Added nohglinesrev.lst' \
+| |  :+        --date '2002-02-10 16:01' --user $B
+| |  :+    seq 1 10 | tr ' ' $'\n' > ignored10.lst
+| |  :+    hg commit -A -m 'Added ignored10.lst' \
+| |  :+        --date '2002-02-11 03:15' --user $A
+| |  :+    echo $'syntax: glob\nignored*' > .hgignore
+| |  :+    hg commit -A -m 'Added .hgignore' \
+| |  :+        --date '2002-02-11 05:43' --user $A
+| |  :+    echo abc >> nohglinesrev.lst
+| |  :+    echo 'Def' > addeddef && hg add addeddef
+| |  :+    hg rm hglines2.lst
+| |  :+    rm nohglines.lst
+| |  :+    cat hglines.lst | rev > hglinesrev.lst
+| |  :+    echo 'Abc' > ignoredabc
+| |  :+>>>>>>> other
+| |  :+tar cJf testrepo.tar.xz testrepo
+| |  :diff -r e021c634413b -r d8140c0b7b0b flines.lst
+| |  :--- a/flines.lst
+| |  :+++ /dev/null
+| |  :@@ -1,5 +0,0 @@
+| |  :-    hg commit -m 'Merge from C' \
+| |  :-    hg commit -m 'Merge from B' \
+| |  :-    hg commit -m 'Merge from C:2' \
+| |  :-    hg commit -m 'Merge from C:1' \
+| |  :-    hg commit -m 'Merge from A' \
+| |  :diff -r e021c634413b -r d8140c0b7b0b glines.lst
+| |  :--- a/glines.lst
+| |  :+++ b/glines.lst
+| |  :@@ -1,10 +1,83 @@
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+local B='B <b@example.org>'
+| |  :+local C='C <c@example.gov>'
+| |  :+    hg init testrepo
+| |  :+    hg commit -A -m 'Added «createrepo.zsh»' \
+| |  :+    hg mv createrepo.zsh crepo.zsh
+| |  :+    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+| |  :+    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+| |  :+>>>>>>> other
+| |  :     hg mv crepo.zsh chgrepo.zsh
+| |  :     hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+| |  :     cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+| |  :     cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+| |  :+    hg branch A
+| |  :+>>>>>>> other
+| |  :     cat chgrepo.zsh | grep 'd' > dlines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added dlines.lst' \
+| |  :+    hg branch B
+| |  :+>>>>>>> other
+| |  :     cat chgrepo.zsh | grep 'a' > alines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added alines.lst' \
+| |  :+    hg branch C
+| |  :+>>>>>>> other
+| |  :     cat alines.lst | grep 'b' > ablines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added ablines.lst' \
+| |  :+    hg tag ablines \
+| |  :+    hg update default
+| |  :+    hg merge -r ablines
+| |  :+    hg commit -m 'Merge from C' \
+| |  :+    hg update C
+| |  :+>>>>>>> other
+| |  :     cat chgrepo.zsh | grep 'b' > blines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added blines.lst' \
+| |  :+    hg tag blines \
+| |  :+    hg update -r -2
+| |  :+>>>>>>> other
+| |  :     cat chgrepo.zsh | sort | grep 'c' > clines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added clines.lst' \
+| |  :+    hg tag clines \
+| |  :+    hg update A
+| |  :+    hg merge -r B
+| |  :+    hg commit -m 'Merge from B' \
+| |  :+    hg merge -r clines
+| |  :+    hg commit -m 'Merge from C:2' \
+| |  :+    hg update default
+| |  :+    hg merge -r blines
+| |  :+    hg commit -m 'Merge from C:1' \
+| |  :+    hg merge -r A
+| |  :+    hg commit -m 'Merge from A' \
+| |  :+    hg cp hglines.lst hglines2.lst
+| |  :+    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+| |  :+>>>>>>> other
+| |  :     cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added nohglines.lst' \
+| |  :+    cat nohglines.lst | rev > nohglinesrev.lst
+| |  :+    hg commit -A -m 'Added nohglinesrev.lst' \
+| |  :+    seq 1 10 | tr ' ' $'\n' > ignored10.lst
+| |  :+    hg commit -A -m 'Added ignored10.lst' \
+| |  :+    echo $'syntax: glob\nignored*' > .hgignore
+| |  :+    hg commit -A -m 'Added .hgignore' \
+| |  :+    echo abc >> nohglinesrev.lst
+| |  :+    echo 'Def' > addeddef && hg add addeddef
+| |  :+    hg rm hglines2.lst
+| |  :+    rm nohglines.lst
+| |  :+    cat hglines.lst | rev > hglinesrev.lst
+| |  :+    echo 'Abc' > ignoredabc
+| |  :+>>>>>>> other
+| |  :diff -r e021c634413b -r d8140c0b7b0b glinescopy.lst
+| |  :--- /dev/null
+| |  :+++ b/glinescopy.lst
+| |  :@@ -0,0 +1,83 @@
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+local B='B <b@example.org>'
+| |  :+local C='C <c@example.gov>'
+| |  :+    hg init testrepo
+| |  :+    hg commit -A -m 'Added «createrepo.zsh»' \
+| |  :+    hg mv createrepo.zsh crepo.zsh
+| |  :+    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+| |  :+    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+| |  :+>>>>>>> other
+| |  :+    hg mv crepo.zsh chgrepo.zsh
+| |  :+    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+| |  :+    hg branch A
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | grep 'd' > dlines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added dlines.lst' \
+| |  :+    hg branch B
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | grep 'a' > alines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added alines.lst' \
+| |  :+    hg branch C
+| |  :+>>>>>>> other
+| |  :+    cat alines.lst | grep 'b' > ablines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added ablines.lst' \
+| |  :+    hg tag ablines \
+| |  :+    hg update default
+| |  :+    hg merge -r ablines
+| |  :+    hg commit -m 'Merge from C' \
+| |  :+    hg update C
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | grep 'b' > blines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added blines.lst' \
+| |  :+    hg tag blines \
+| |  :+    hg update -r -2
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added clines.lst' \
+| |  :+    hg tag clines \
+| |  :+    hg update A
+| |  :+    hg merge -r B
+| |  :+    hg commit -m 'Merge from B' \
+| |  :+    hg merge -r clines
+| |  :+    hg commit -m 'Merge from C:2' \
+| |  :+    hg update default
+| |  :+    hg merge -r blines
+| |  :+    hg commit -m 'Merge from C:1' \
+| |  :+    hg merge -r A
+| |  :+    hg commit -m 'Merge from A' \
+| |  :+    hg cp hglines.lst hglines2.lst
+| |  :+    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+| |  :+>>>>>>> other
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+| |  :+<<<<<<< local
+| |  :+=======
+| |  :+    hg commit -A -m 'Added nohglines.lst' \
+| |  :+    cat nohglines.lst | rev > nohglinesrev.lst
+| |  :+    hg commit -A -m 'Added nohglinesrev.lst' \
+| |  :+    seq 1 10 | tr ' ' $'\n' > ignored10.lst
+| |  :+    hg commit -A -m 'Added ignored10.lst' \
+| |  :+    echo $'syntax: glob\nignored*' > .hgignore
+| |  :+    hg commit -A -m 'Added .hgignore' \
+| |  :+    echo abc >> nohglinesrev.lst
+| |  :+    echo 'Def' > addeddef && hg add addeddef
+| |  :+    hg rm hglines2.lst
+| |  :+    rm nohglines.lst
+| |  :+    cat hglines.lst | rev > hglinesrev.lst
+| |  :+    echo 'Abc' > ignoredabc
+| |  :+>>>>>>> other
+| |  :
+| |  
+o |  Changeset 24:e021c634413b240b8c834a85200acc28d645f1f1
+| |  Commited 11 Feb 2002 04:15 by A <a@example.com>
+| |  Files: elines.lst, flines.lst, glines.lst
+| |  @ Added elines.lst with eplines
+| |  @ Added flines.lst with frlines
+| |  @ Added glines.lst with grlines
+| |  $  elines.lst | 19 0
+| |  $  flines.lst |  5 0
+| |  $  glines.lst | 10 0
+| |  $3 files changed, 34 insertions, 0 deletions
+| |  :diff -r 5afd628b0861 -r e021c634413b elines.lst
+| |  :--- /dev/null
+| |  :+++ b/elines.lst
+| |  :@@ -0,0 +1,19 @@
+| |  :+    hg init testrepo
+| |  :+    cd testrepo
+| |  :+    cp ../createrepo.zsh .
+| |  :+    hg commit -A -m 'Added «createrepo.zsh»' \
+| |  :+    hg mv createrepo.zsh crepo.zsh
+| |  :+    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+| |  :+    perl -p -i -e 'tr/{}/{}/' crepo.zsh
+| |  :+    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+| |  :+    hg mv crepo.zsh chgrepo.zsh
+| |  :+    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+| |  :+    cat chgrepo.zsh | grep 'd' > dlines.lst
+| |  :+    cat chgrepo.zsh | grep 'a' > alines.lst
+| |  :+    cat alines.lst | grep 'b' > ablines.lst
+| |  :+    cat chgrepo.zsh | grep 'b' > blines.lst
+| |  :+    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+| |  :+tar cJf testrepo.tar.xz testrepo
+| |  :diff -r 5afd628b0861 -r e021c634413b flines.lst
+| |  :--- /dev/null
+| |  :+++ b/flines.lst
+| |  :@@ -0,0 +1,5 @@
+| |  :+    hg commit -m 'Merge from C' \
+| |  :+    hg commit -m 'Merge from B' \
+| |  :+    hg commit -m 'Merge from C:2' \
+| |  :+    hg commit -m 'Merge from C:1' \
+| |  :+    hg commit -m 'Merge from A' \
+| |  :diff -r 5afd628b0861 -r e021c634413b glines.lst
+| |  :--- /dev/null
+| |  :+++ b/glines.lst
+| |  :@@ -0,0 +1,10 @@
+| |  :+    hg mv crepo.zsh chgrepo.zsh
+| |  :+    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+| |  :+    cat chgrepo.zsh | grep 'd' > dlines.lst
+| |  :+    cat chgrepo.zsh | grep 'a' > alines.lst
+| |  :+    cat alines.lst | grep 'b' > ablines.lst
+| |  :+    cat chgrepo.zsh | grep 'b' > blines.lst
+| |  :+    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+| |  :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+| |  :
+| |  
+| o  Changeset 23:e1eaeea486e48634588c778fd36a81ac5c8869a6
+|/   Commited 11 Feb 2002 04:15 by A <a@example.com>
+|    Files: elines.lst, flines.lst, glines.lst
+|    @ Added elines.lst, flines.lst and glines.lst
+|    $  elines.lst |  88 0
+|    $  flines.lst |  12 0
+|    $  glines.lst |  59 0
+|    $3 files changed, 159 insertions, 0 deletions
+|    :diff -r 5afd628b0861 -r e1eaeea486e4 elines.lst
+|    :--- /dev/null
+|    :+++ b/elines.lst
+|    :@@ -0,0 +1,88 @@
+|    :+emulate -L zsh
+|    :+set -e
+|    :+local A='A <a@example.com>'
+|    :+local B='B <b@example.org>'
+|    :+local C='C <c@example.gov>'
+|    :+    set -e
+|    :+    hg init testrepo
+|    :+    cd testrepo
+|    :+    cp ../createrepo.zsh .
+|    :+    # XXX Date test will work only till 2099
+|    :+    hg commit -A -m 'Added «createrepo.zsh»' \
+|    :+        --date '1999-01-02 5:20' --user $A
+|    :+    hg mv createrepo.zsh crepo.zsh
+|    :+    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+|    :+        --date '2000-01-05 7:30' --user $A
+|    :+    perl -p -i -e 'tr/{}/{}/' crepo.zsh
+|    :+    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+|    :+        --date '2000-01-15 15:00' --user $B
+|    :+    hg mv crepo.zsh chgrepo.zsh
+|    :+    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+|    :+        --date '2000-02-01 14:00' --user $B
+|    :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+|    :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+|    :+    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+|    :+        --date '2000-05-10 4:23' --user $A
+|    :+    cat chgrepo.zsh | grep 'd' > dlines.lst
+|    :+    hg commit -A -m 'Added dlines.lst' \
+|    :+        --date '2000-11-01 13:24' --user $B
+|    :+    cat chgrepo.zsh | grep 'a' > alines.lst
+|    :+    hg commit -A -m 'Added alines.lst' \
+|    :+        --date '2000-11-02 5:44' --user $A
+|    :+    cat alines.lst | grep 'b' > ablines.lst
+|    :+    hg commit -A -m 'Added ablines.lst' \
+|    :+        --date '2000-11-02 14:13' --user $B
+|    :+    hg tag ablines \
+|    :+        --date '2000-11-02 14:14' --user $B
+|    :+    hg update default
+|    :+    hg merge -r ablines
+|    :+    hg commit -m 'Merge from C' \
+|    :+        --date '2001-01-01 00:00' --user $C
+|    :+    hg update C
+|    :+    cat chgrepo.zsh | grep 'b' > blines.lst
+|    :+    hg commit -A -m 'Added blines.lst' \
+|    :+        --date '2001-02-01 05:18' --user $A
+|    :+    hg tag blines \
+|    :+        --date '2001-02-01 05:19' --user $A
+|    :+    hg update -r -2
+|    :+    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+|    :+    hg commit -A -m 'Added clines.lst' \
+|    :+        --date '2001-02-01 14:56' --user $B
+|    :+    hg tag clines \
+|    :+        --date '2001-02-01 14:56:52' --user $B
+|    :+    hg update A
+|    :+    hg merge -r B
+|    :+    hg commit -m 'Merge from B' \
+|    :+        --date '2002-01-01 00:00' --user $C
+|    :+    hg merge -r clines
+|    :+    hg commit -m 'Merge from C:2' \
+|    :+        --date '2002-01-01 00:00:15' --user $C
+|    :+    hg update default
+|    :+    hg merge -r blines
+|    :+    hg commit -m 'Merge from C:1' \
+|    :+        --date '2002-01-01 00:00:30' --user $C
+|    :+    hg merge -r A
+|    :+    hg commit -m 'Merge from A' \
+|    :+        --date '2002-01-01 00:00:45' --user $C
+|    :+    hg cp hglines.lst hglines2.lst
+|    :+    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+|    :+        --date '2002-02-10 05:00' --user $A
+|    :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+|    :+    hg commit -A -m 'Added nohglines.lst' \
+|    :+        --date '2002-02-10 15:33' --user $B
+|    :+    cat nohglines.lst | rev > nohglinesrev.lst
+|    :+    hg commit -A -m 'Added nohglinesrev.lst' \
+|    :+        --date '2002-02-10 16:01' --user $B
+|    :+    seq 1 10 | tr ' ' $'\n' > ignored10.lst
+|    :+    hg commit -A -m 'Added ignored10.lst' \
+|    :+        --date '2002-02-11 03:15' --user $A
+|    :+    echo $'syntax: glob\nignored*' > .hgignore
+|    :+    hg commit -A -m 'Added .hgignore' \
+|    :+        --date '2002-02-11 05:43' --user $A
+|    :+    echo abc >> nohglinesrev.lst
+|    :+    echo 'Def' > addeddef && hg add addeddef
+|    :+    hg rm hglines2.lst
+|    :+    rm nohglines.lst
+|    :+    cat hglines.lst | rev > hglinesrev.lst
+|    :+    echo 'Abc' > ignoredabc
+|    :+tar cJf testrepo.tar.xz testrepo
+|    :diff -r 5afd628b0861 -r e1eaeea486e4 flines.lst
+|    :--- /dev/null
+|    :+++ b/flines.lst
+|    :@@ -0,0 +1,12 @@
+|    :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+|    :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+|    :+    hg update default
+|    :+    hg commit -m 'Merge from C' \
+|    :+    hg commit -m 'Merge from B' \
+|    :+    hg commit -m 'Merge from C:2' \
+|    :+    hg update default
+|    :+    hg commit -m 'Merge from C:1' \
+|    :+    hg commit -m 'Merge from A' \
+|    :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+|    :+    echo 'Def' > addeddef && hg add addeddef
+|    :+tar cJf testrepo.tar.xz testrepo
+|    :diff -r 5afd628b0861 -r e1eaeea486e4 glines.lst
+|    :--- /dev/null
+|    :+++ b/glines.lst
+|    :@@ -0,0 +1,59 @@
+|    :+local B='B <b@example.org>'
+|    :+local C='C <c@example.gov>'
+|    :+    hg init testrepo
+|    :+    hg commit -A -m 'Added «createrepo.zsh»' \
+|    :+    hg mv createrepo.zsh crepo.zsh
+|    :+    hg commit -A -m 'Renamed «createrepo.zsh» to «crepo.zsh»' \
+|    :+    hg commit -m $'Replaced\n    {\n        ...\n    }\nwith\n    {\n        ...\n    }' \
+|    :+    hg mv crepo.zsh chgrepo.zsh
+|    :+    hg commit -A -m 'Renamed «crepo.zsh» to «chgrepo.zsh»' \
+|    :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > hglines.lst
+|    :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ unless /^    hg /' > datelines.lst
+|    :+    hg commit -A -m 'Added «hglines.lst» and «datelines.lst»' \
+|    :+    hg branch A
+|    :+    cat chgrepo.zsh | grep 'd' > dlines.lst
+|    :+    hg commit -A -m 'Added dlines.lst' \
+|    :+    hg branch B
+|    :+    cat chgrepo.zsh | grep 'a' > alines.lst
+|    :+    hg commit -A -m 'Added alines.lst' \
+|    :+    hg branch C
+|    :+    cat alines.lst | grep 'b' > ablines.lst
+|    :+    hg commit -A -m 'Added ablines.lst' \
+|    :+    hg tag ablines \
+|    :+    hg update default
+|    :+    hg merge -r ablines
+|    :+    hg commit -m 'Merge from C' \
+|    :+    hg update C
+|    :+    cat chgrepo.zsh | grep 'b' > blines.lst
+|    :+    hg commit -A -m 'Added blines.lst' \
+|    :+    hg tag blines \
+|    :+    hg update -r -2
+|    :+    cat chgrepo.zsh | sort | grep 'c' > clines.lst
+|    :+    hg commit -A -m 'Added clines.lst' \
+|    :+    hg tag clines \
+|    :+    hg update A
+|    :+    hg merge -r B
+|    :+    hg commit -m 'Merge from B' \
+|    :+    hg merge -r clines
+|    :+    hg commit -m 'Merge from C:2' \
+|    :+    hg update default
+|    :+    hg merge -r blines
+|    :+    hg commit -m 'Merge from C:1' \
+|    :+    hg merge -r A
+|    :+    hg commit -m 'Merge from A' \
+|    :+    hg cp hglines.lst hglines2.lst
+|    :+    hg commit -A -m 'Copied “hglines.lst” to “hglines2.lst”' \
+|    :+    cat chgrepo.zsh | perl -p -i -e 'undef $_ if /^    hg /' > nohglines.lst
+|    :+    hg commit -A -m 'Added nohglines.lst' \
+|    :+    cat nohglines.lst | rev > nohglinesrev.lst
+|    :+    hg commit -A -m 'Added nohglinesrev.lst' \
+|    :+    seq 1 10 | tr ' ' $'\n' > ignored10.lst
+|    :+    hg commit -A -m 'Added ignored10.lst' \
+|    :+    echo $'syntax: glob\nignored*' > .hgignore
+|    :+    hg commit -A -m 'Added .hgignore' \
+|    :+    echo abc >> nohglinesrev.lst
+|    :+    echo 'Def' > addeddef && hg add addeddef
+|    :+    hg rm hglines2.lst
+|    :+    rm nohglines.lst
+|    :+    cat hglines.lst | rev > hglinesrev.lst
+|    :+    echo 'Abc' > ignoredabc
+|    :
+|    
+o  Changeset 22:5afd628b0861f6447ed813895d5ced58a1c42a72
+|  Commited 11 Feb 2002 03:16 by A <a@example.com>
+|  Files: .hgtags
+|  @ Added tag oldtag for changeset 023aa55bd806
+|  $  .hgtags | 1 0
+|  $1 files changed, 1 insertions, 0 deletions
+|  :diff -r e85aa09aab16 -r 5afd628b0861 .hgtags
+|  :--- a/.hgtags
+|  :+++ b/.hgtags
+|  :@@ -1,1 +1,2 @@
+|  : c06107b7bcbe751d2dd40faf4179ee7d6aac44ac ablines
+|  :+023aa55bd8062179ce36adbdd78363e9b88718c1 oldtag
+|  :
+|  
+o  Changeset 21:e85aa09aab1621b59b8be37f723410b219c8599c
 |  Commited 11 Feb 2002 03:15 by A <a@example.com>
 |  Files: ignored10.lst
 |  @ Added ignored10.lst
 |  $  ignored10.lst | 10 0
 |  $1 files changed, 10 insertions, 0 deletions
-|  :diff -r 2c2d8b2b8164 -r 214bbd7a8f11 ignored10.lst
+|  :diff -r 67cf252de26b -r e85aa09aab16 ignored10.lst
 |  :--- /dev/null
 |  :+++ b/ignored10.lst
 |  :@@ -0,0 +1,10 @@
 |  :+10
 |  :
 |  
-o  Changeset 20:2c2d8b2b8164681fcc1ea55bf8e086f034ddc70e
+o  Changeset 20:67cf252de26b12da6769114cc89b793357f5a46a
 |  Commited 10 Feb 2002 16:01 by B <b@example.org>
 |  Files: nohglinesrev.lst
 |  @ Added nohglinesrev.lst
 |  $  nohglinesrev.lst | 53 0
 |  $1 files changed, 53 insertions, 0 deletions
-|  :diff -r a38ec092ab72 -r 2c2d8b2b8164 nohglinesrev.lst
+|  :diff -r 456e0b05b81a -r 67cf252de26b nohglinesrev.lst
 |  :--- /dev/null
 |  :+++ b/nohglinesrev.lst
 |  :@@ -0,0 +1,53 @@
 |  :+opertset zx.rat.opertset fJc rat
 |  :
 |  
-o  Changeset 19:a38ec092ab72534eae6240c4378f4e4da9fb7e74
+o  Changeset 19:456e0b05b81af4f332405336f11df4769ec9f250
 |  Commited 10 Feb 2002 15:33 by B <b@example.org>
 |  Files: nohglines.lst
 |  @ Added nohglines.lst
 |  $  nohglines.lst | 53 0
 |  $1 files changed, 53 insertions, 0 deletions
-|  :diff -r 5b7ed139504a -r a38ec092ab72 nohglines.lst
+|  :diff -r f44a21859e57 -r 456e0b05b81a nohglines.lst
 |  :--- /dev/null
 |  :+++ b/nohglines.lst
 |  :@@ -0,0 +1,53 @@
 |  :+tar cJf testrepo.tar.xz testrepo
 |  :
 |  
-o  Changeset 18:5b7ed139504a773cacfda7307e92cfba9a602d7f
+o  Changeset 18:f44a21859e57e4abc6155da804d08dd5069e798e
 |  Commited 10 Feb 2002 05:00 by A <a@example.com>
 |  Files: hglines2.lst
 |  Copied hglines.lst to hglines2.lst
 |  @ Copied “hglines.lst” to “hglines2.lst”
 |  $  hglines2.lst | 41 0
 |  $1 files changed, 41 insertions, 0 deletions
-|  :diff -r 21d58f7d0c8a -r 5b7ed139504a hglines2.lst
+|  :diff -r e5648a3eea57 -r f44a21859e57 hglines2.lst
 |  :--- /dev/null
 |  :+++ b/hglines2.lst
 |  :@@ -0,0 +1,41 @@
 |  :+    hg rm hglines2.lst
 |  :
 |  
-o    Changeset 17:21d58f7d0c8a0b75eb5b27fe97e78690c1a18be8
+o    Changeset 17:e5648a3eea574f3fc03709b4fdd799a38f649edd
 |\   Commited 01 Jan 2002 00:00 by C <c@example.gov>
 | |  @ Merge from A
 | |  $  clines.lst | 49 0
 | |  $1 files changed, 49 insertions, 0 deletions
-| |  :diff -r 90772a14fa55 -r 21d58f7d0c8a clines.lst
+| |  :diff -r 462a1e95be86 -r e5648a3eea57 clines.lst
 | |  :--- /dev/null
 | |  :+++ b/clines.lst
 | |  :@@ -0,0 +1,49 @@
 | |  :+tar cJf testrepo.tar.xz testrepo
 | |  :
 | |  
-o |    Changeset 16:90772a14fa550b47e27709d36a7c9efd506ba239
+o |    Changeset 16:462a1e95be86f96aaf6d7360f6f770826c3eb641
 |\ \   Commited 01 Jan 2002 00:00 by C <c@example.gov>
 | | |  @ Merge from C:1
 | | |  $  .hgtags    |  1 0
 | | |  $  blines.lst | 16 0
 | | |  $2 files changed, 17 insertions, 0 deletions
-| | |  :diff -r 00cf93136629 -r 90772a14fa55 .hgtags
+| | |  :diff -r 269399222040 -r 462a1e95be86 .hgtags
 | | |  :--- /dev/null
 | | |  :+++ b/.hgtags
 | | |  :@@ -0,0 +1,1 @@
-| | |  :+0b4ef1ee673d958bfa691f07fdbb4369b24904fa ablines
-| | |  :diff -r 00cf93136629 -r 90772a14fa55 blines.lst
+| | |  :+c06107b7bcbe751d2dd40faf4179ee7d6aac44ac ablines
+| | |  :diff -r 269399222040 -r 462a1e95be86 blines.lst
 | | |  :--- /dev/null
 | | |  :+++ b/blines.lst
 | | |  :@@ -0,0 +1,16 @@
 | | |  :+    echo 'Abc' > ignoredabc
 | | |  :
 | | |  
-| | o    Changeset 15:3ced0ae2c577db232d151d5aca4b64aab1ebcf75 (branch A)
+| | o    Changeset 15:be92227e3e43f4e7402408afe110098d209d2568 (branch A)
 | | |\   Commited 01 Jan 2002 00:00 by C <c@example.gov>
 | | | |  @ Merge from C:2
 | | | |  $  .hgtags     |  1 0
 | | | |  $  blines.lst  | 16 0
 | | | |  $  clines.lst  | 49 0
 | | | |  $4 files changed, 79 insertions, 0 deletions
-| | | |  :diff -r 4f33ce8791eb -r 3ced0ae2c577 .hgtags
+| | | |  :diff -r 5e2f73d0c01d -r be92227e3e43 .hgtags
 | | | |  :--- /dev/null
 | | | |  :+++ b/.hgtags
 | | | |  :@@ -0,0 +1,1 @@
-| | | |  :+0b4ef1ee673d958bfa691f07fdbb4369b24904fa ablines
-| | | |  :diff -r 4f33ce8791eb -r 3ced0ae2c577 ablines.lst
+| | | |  :+c06107b7bcbe751d2dd40faf4179ee7d6aac44ac ablines
+| | | |  :diff -r 5e2f73d0c01d -r be92227e3e43 ablines.lst
 | | | |  :--- /dev/null
 | | | |  :+++ b/ablines.lst
 | | | |  :@@ -0,0 +1,13 @@
 | | | |  :+    echo $'syntax: glob\nignored*' > .hgignore
 | | | |  :+    echo abc >> nohglinesrev.lst
 | | | |  :+    echo 'Abc' > ignoredabc
-| | | |  :diff -r 4f33ce8791eb -r 3ced0ae2c577 blines.lst
+| | | |  :diff -r 5e2f73d0c01d -r be92227e3e43 blines.lst
 | | | |  :--- /dev/null
 | | | |  :+++ b/blines.lst
 | | | |  :@@ -0,0 +1,16 @@
 | | | |  :+    echo $'syntax: glob\nignored*' > .hgignore
 | | | |  :+    echo abc >> nohglinesrev.lst
 | | | |  :+    echo 'Abc' > ignoredabc
-| | | |  :diff -r 4f33ce8791eb -r 3ced0ae2c577 clines.lst
+| | | |  :diff -r 5e2f73d0c01d -r be92227e3e43 clines.lst
 | | | |  :--- /dev/null
 | | | |  :+++ b/clines.lst
 | | | |  :@@ -0,0 +1,49 @@
 | | | |  :+tar cJf testrepo.tar.xz testrepo
 | | | |  :
 | | | |  
-| | o |    Changeset 14:4f33ce8791eb9481ed5e4e198641d6e69fc11ec0 (branch A)
+| | o |    Changeset 14:5e2f73d0c01dfb8ee0d3577e03d016a5f6df58b1 (branch A)
 | | |\ \   Commited 01 Jan 2002 00:00 by C <c@example.gov>
 | | | | |  @ Merge from B
 | | | | |  $  alines.lst | 64 0
 | | | | |  $1 files changed, 64 insertions, 0 deletions
-| | | | |  :diff -r 4654f8e4bccd -r 4f33ce8791eb alines.lst
+| | | | |  :diff -r d760b0fe4fe4 -r 5e2f73d0c01d alines.lst
 | | | | |  :--- /dev/null
 | | | | |  :+++ b/alines.lst
 | | | | |  :@@ -0,0 +1,64 @@
 | | | | |  :+tar cJf testrepo.tar.xz testrepo
 | | | | |  :
 | | | | |  
-| | | | | o  Changeset 13:331b232648474c521c7f9d96865421698e8936da (branch C)
+| | | | | o  Changeset 13:14b19ea42f824c8597f8358149c5ba994299a410 (branch C)
 | | | | |/   Commited 01 Feb 2001 14:56 by B <b@example.org>
 | | | | |    Files: .hgtags
-| | | | |    @ Added tag clines for changeset c767dffcf34d
+| | | | |    @ Added tag clines for changeset 023aa55bd806
 | | | | |    $  .hgtags | 1 0
 | | | | |    $1 files changed, 1 insertions, 0 deletions
-| | | | |    :diff -r c767dffcf34d -r 331b23264847 .hgtags
+| | | | |    :diff -r 023aa55bd806 -r 14b19ea42f82 .hgtags
 | | | | |    :--- a/.hgtags
 | | | | |    :+++ b/.hgtags
 | | | | |    :@@ -1,1 +1,2 @@
-| | | | |    : 0b4ef1ee673d958bfa691f07fdbb4369b24904fa ablines
-| | | | |    :+c767dffcf34d1d43e8fb4ec1d4ac83e929c68ccc clines
+| | | | |    : c06107b7bcbe751d2dd40faf4179ee7d6aac44ac ablines
+| | | | |    :+023aa55bd8062179ce36adbdd78363e9b88718c1 clines
 | | | | |    :
 | | | | |    
-| +-----o  Changeset 12:c767dffcf34d1d43e8fb4ec1d4ac83e929c68ccc (branch C)
+| +-----o  Changeset 12:023aa55bd8062179ce36adbdd78363e9b88718c1 (branch C)
 | | | |    Commited 01 Feb 2001 14:56 by B <b@example.org>
-| | | |    Tags: clines
+| | | |    Tags: clines, oldtag
 | | | |    Files: clines.lst
 | | | |    @ Added clines.lst
 | | | |    $  clines.lst | 49 0
 | | | |    $1 files changed, 49 insertions, 0 deletions
-| | | |    :diff -r 235d6a7d7b43 -r c767dffcf34d clines.lst
+| | | |    :diff -r c4110a066208 -r 023aa55bd806 clines.lst
 | | | |    :--- /dev/null
 | | | |    :+++ b/clines.lst
 | | | |    :@@ -0,0 +1,49 @@
 | | | |    :+tar cJf testrepo.tar.xz testrepo
 | | | |    :
 | | | |    
-| +-----o  Changeset 11:e2b6fb70c2c7d6bd3f1d5bff65a7de6681976743 (branch C)
+| +-----o  Changeset 11:0e6e0adf281b423193f9dce097ab1df4f91215f7 (branch C)
 | | | |    Commited 01 Feb 2001 05:19 by A <a@example.com>
 | | | |    Files: .hgtags
-| | | |    @ Added tag blines for changeset 235d6a7d7b43
+| | | |    @ Added tag blines for changeset c4110a066208
 | | | |    $  .hgtags | 1 0
 | | | |    $1 files changed, 1 insertions, 0 deletions
-| | | |    :diff -r 235d6a7d7b43 -r e2b6fb70c2c7 .hgtags
+| | | |    :diff -r c4110a066208 -r 0e6e0adf281b .hgtags
 | | | |    :--- a/.hgtags
 | | | |    :+++ b/.hgtags
 | | | |    :@@ -1,1 +1,2 @@
-| | | |    : 0b4ef1ee673d958bfa691f07fdbb4369b24904fa ablines
-| | | |    :+235d6a7d7b435cd3452b4c84f74fe9bad4b91a59 blines
+| | | |    : c06107b7bcbe751d2dd40faf4179ee7d6aac44ac ablines
+| | | |    :+c4110a066208167dae46b08f4e0d8d2b37e842f3 blines
 | | | |    :
 | | | |    
-| o | |  Changeset 10:235d6a7d7b435cd3452b4c84f74fe9bad4b91a59 (branch C)
+| o | |  Changeset 10:c4110a066208167dae46b08f4e0d8d2b37e842f3 (branch C)
 | | | |  Commited 01 Feb 2001 05:18 by A <a@example.com>
 | | | |  Tags: blines
 | | | |  Files: blines.lst
 | | | |  @ Added blines.lst
 | | | |  $  blines.lst | 16 0
 | | | |  $1 files changed, 16 insertions, 0 deletions
-| | | |  :diff -r 5c5f63aea57f -r 235d6a7d7b43 blines.lst
+| | | |  :diff -r 250ba7cd831e -r c4110a066208 blines.lst
 | | | |  :--- /dev/null
 | | | |  :+++ b/blines.lst
 | | | |  :@@ -0,0 +1,16 @@
 | | | |  :+    echo 'Abc' > ignoredabc
 | | | |  :
 | | | |  
-o | | |    Changeset 9:00cf93136629e2fbbca9464205bbd381c0451d23
+o | | |    Changeset 9:269399222040415b3928a316f5d28792cc0be4dd
 |\ \ \ \   Commited 01 Jan 2001 00:00 by C <c@example.gov>
 | | | | |  @ Merge from C
 | | | | |  $  ablines.lst |  13 0
 | | | | |  $  alines.lst  |  64 0
 | | | | |  $  dlines.lst  |  52 0