Mercurial > hg > mercurial-crew-with-dirclash
view tests/test-simplemerge-cmd @ 4492:b79cdb7f0597
patch.diff: avoid calling workingctx().manifest()
Right now, to generate the manifest of the working dir, we have to
perform a full walk of the working dir, which will be very slow,
especially if we're interested in only a small part of it.
Since we use the manifest only to find out the mode of files for git
patches, manually build an execf function to do it.
This should fix issue567.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Sun, 03 Jun 2007 14:38:52 -0300 |
parents | c6413f8f2f8e |
children |
line wrap: on
line source
#!/bin/sh cp "$TESTDIR"/../contrib/simplemerge . echo base > base echo local > local cat base >> local cp local orig cat base > other echo other >> other echo '% changing local directly' python simplemerge local base other && echo "merge succeeded" cat local cp orig local echo '% printing to stdout' python simplemerge -p local base other echo ' local:' cat local echo '% conflicts' cp base conflict-local cp other conflict-other echo not other >> conflict-local echo end >> conflict-local echo end >> conflict-other python simplemerge -p conflict-local base conflict-other || echo "merge failed" echo '% --no-minimal' python simplemerge -p --no-minimal conflict-local base conflict-other echo '% 1 label' python simplemerge -p -L foo conflict-local base conflict-other echo '% 2 labels' python simplemerge -p -L foo -L bar conflict-local base conflict-other echo '% too many labels' python simplemerge -p -L foo -L bar -L baz conflict-local base conflict-other echo '% binary file' python -c "f = file('binary-local', 'w'); f.write('\x00'); f.close()" cat orig >> binary-local python simplemerge -p binary-local base other echo '% binary file --text' python simplemerge -a -p binary-local base other echo '% help' python simplemerge --help echo '% wrong number of arguments' python simplemerge echo '% bad option' python simplemerge --foo -p local base other exit 0