Mercurial > hg-stable
view tests/test-mq-merge @ 7305:c21d236ca897
hgweb: descend empty directories in web view
When a manifest has a series of directories with nothing in them but a single
directory, displaying the entire chain of empty directories allows for
navigation down to the first non-empty directory with a single click.
Because Java links package hierarchy to directory hierarchy, and because Java
conventions include at least three empty directories at the top of this
hierarchy, descending down empty directories is very common in Java web tools.
author | Ry4an Brase <ry4an-hg@ry4an.org> |
---|---|
date | Mon, 03 Nov 2008 10:20:28 +0100 |
parents | f18f14bae172 |
children | bb5ea66789e3 7637fe4f525d |
line wrap: on
line source
#!/bin/sh # Test issue 529 - mq aborts when merging patch deleting files rewrite_path() { sed -e 's:\\:/:g' -e 's:[^ ]*/t/::g' } checkundo() { if [ -f .hg/store/undo ]; then echo ".hg/store/undo still exists after $1" fi } echo "[extensions]" >> $HGRCPATH echo "hgext.mq=" >> $HGRCPATH # Commit two dummy files in "init" changeset hg init t cd t echo a > a echo b > b hg ci -Am init hg tag -l init # Create a patch removing a hg qnew rm_a hg rm a hg qrefresh -m "rm a" # Save the patch queue so we can merge it later hg qsave -c -e 2>&1 | rewrite_path checkundo qsave # Update b and commit in an "update" changeset hg up -C init echo b >> b hg st hg ci -m update # Here, qpush used to abort with : # The system cannot find the file specified => a hg manifest hg qpush -a -m 2>&1 | rewrite_path checkundo 'qpush -m' hg manifest # ensure status is correct after merge hg qpop -a cd .. # Classic MQ merge sequence *with an explicit named queue* echo echo % init t2 hg init t2 cd t2 echo a > a hg ci -Am init echo b >> a hg ci -m changea hg up -C 0 echo c >> a hg qnew -f -e patcha echo % create the reference queue hg qsave -c -e -n refqueue 2> /dev/null hg up -C 1 echo % merge hg qpush -m -n refqueue 2>&1 | \ sed 's/merging with queue at.*refqueue/merging with queue at refqueue/' cd ..