Mercurial > hg
view tests/test-mq-caches @ 5823:2a66138c5e7e
keyword: (bugfix) only set changenode for kwtemplater when committing
kwexpand must always obtain changenode from filectx,
otherwise current changenode is expanded in every file.
Also fixes "hg cat <more than 1 file>".
author | Christian Ebert <blacktrash@gmx.net> |
---|---|
date | Wed, 09 Jan 2008 05:18:50 +0100 |
parents | a7af0eeae8a3 |
children | 3ee3bc5d06c5 |
line wrap: on
line source
#!/bin/sh echo '[extensions]' >> $HGRCPATH echo 'hgext.mq=' >> $HGRCPATH show_branch_cache() { branches=.hg/branch.cache # force cache (re)generation hg log -r does-not-exist 2> /dev/null hg log -r tip --template 'tip: #rev#\n' if [ -f $branches ]; then sort $branches else echo No $branches fi if [ "$1" = 1 ]; then for b in foo bar; do hg log -r $b --template "branch $b: "'#rev#\n' done fi } hg init a cd a hg qinit -c echo '# mq patch on an empty repo' hg qnew p1 show_branch_cache echo > pfile hg add pfile hg qrefresh -m 'patch 1' show_branch_cache echo echo '# some regular revisions' hg qpop echo foo > foo hg add foo echo foo > .hg/branch hg ci -m 'branch foo' -d '1000000 0' echo bar > bar hg add bar echo bar > .hg/branch hg ci -m 'branch bar' -d '1000000 0' show_branch_cache echo echo '# add some mq patches' hg qpush show_branch_cache hg qnew p2 echo foo > .hg/branch echo foo2 >> foo hg qrefresh -m 'patch 2' show_branch_cache 1 echo echo '# removing the cache' rm .hg/branch.cache show_branch_cache 1 echo echo '# importing rev 1 (the cache now ends in one of the patches)' hg qimport -r 1 -n p0 show_branch_cache 1 hg log -r qbase --template 'qbase: #rev#\n' echo echo '# detect an invalid cache' hg qpop -a hg qpush -a show_branch_cache