#!/bin/sh # No local source hg clone a b echo $? # No remote source hg clone http://127.0.0.1:3121/a b echo $? rm -rf b # work around bug with http clone # Inaccessible source mkdir a chmod 000 a hg clone a b echo $? # Inaccessible destination mkdir b cd b hg init hg clone . ../a echo $? cd .. chmod 700 a rm -r a b # Source of wrong type if "$TESTDIR/hghave" -q fifo; then mkfifo a hg clone a b echo $? rm a else echo "abort: repository a not found!" echo 255 fi # Default destination, same directory mkdir q cd q hg init cd .. hg clone q # destination directory not empty mkdir a echo stuff > a/a hg clone q a echo $? # leave existing directory in place after clone failure hg init c cd c echo c > c hg commit -A -m test -d '0 0' chmod -rx .hg/store/data cd .. mkdir d hg clone c d 2> err echo $? test -d d && echo "dir is still here" || echo "dir is gone" test -d d/.hg && echo "repo is still here" || echo "repo is gone" true