Mercurial > hg
view tests/test-pull @ 11541:ab9fa7a85dd9 stable
filelog: cmp: don't read data if hashes are identical (issue2273)
filelog.renamed() is an expensive call as it reads the filelog if p1 == nullid.
It's more efficient to first compute the hash, and to bail early if
the computed hash is the same as the stored nodeid.
'samehashes' variable is not strictly necessary, but helps for comprehension.
author | Nicolas Dumazet <nicdumz.commits@gmail.com> |
---|---|
date | Mon, 05 Jul 2010 19:49:54 +0900 |
parents | 38f2ef9c134b |
children |
line wrap: on
line source
#!/bin/sh mkdir test cd test echo foo>foo hg init hg addremove hg commit -m 1 hg verify hg serve -p $HGPORT -d --pid-file=hg.pid cat hg.pid >> $DAEMON_PIDS cd .. hg clone --pull http://foo:bar@localhost:$HGPORT/ copy | sed -e "s,:$HGPORT/,:\$HGPORT/," cd copy hg verify hg co cat foo hg manifest --debug hg pull | sed -e "s,:$HGPORT/,:\$HGPORT/," hg rollback --dry-run --verbose | sed -e "s,:$HGPORT/,:\$HGPORT/," echo % issue 622 cd .. hg init empty cd empty hg pull -u ../test echo % test file: uri handling hg pull -q file://../test-doesnt-exist 2>&1 \ | sed 's%abort: repository.*/test-doesnt-exist%abort: repository /test-doesnt-exist%' hg pull -q file:../test # It's tricky to make file:// URLs working on every platforms # with regular shell commands. URL=`python -c "import os; print 'file://foobar' + ('/' + os.getcwd().replace(os.sep, '/')).replace('//', '/') + '/../test'"` hg pull -q "$URL"