# vim: syn=sh: $TESTDIR/rollback || die "rollback failed" # ---------- name "basic push admin repo" echo " repo aa RW+ = u1 RW = u2 u3 " | ugc expect "To gitolite:gitolite-admin" expect "master -> master" name "basic create repo" expect "remote: Initialized empty Git repository in $TEST_BASE_FULL/aa.git/" # ---------- name "basic clone" cd ~/td runlocal git clone u1:aa u1aa expect "Cloning into u1aa..." expect "warning: You appear to have cloned an empty repository" runlocal ls -ald --time-style=long-iso u1aa expect "drwxr-xr-x 3 $USER $USER 4096 201.-..-.. ..:.. u1aa" # ---------- name "basic clone deny" cd ~/td runlocal git clone u4:aa u4aa expect "R access for aa DENIED to u4" runlocal ls -ald u4aa expect "ls: cannot access u4aa: No such file or directory" # ---------- name "basic push" cd ~/td/u1aa mdc runlocal git push origin HEAD expect "To u1:aa" expect "\[new branch\] *HEAD -> master" # ---------- name "basic rewind" cd ~/td/u1aa mdc mdc mdc runlocal git push origin HEAD runlocal git reset --hard HEAD^ mdc runlocal git push -f origin HEAD expect "+ .* HEAD -> master (forced update)" name "basic rewind log" taillog expect " u1 .* + .* aa refs/heads/master refs/.\*" # ---------- name "basic rewind deny" cd ~/td runlocal git clone u2:aa u2aa cd ~/td/u2aa mdc mdc mdc runlocal git push origin HEAD runlocal git reset --hard HEAD^ mdc runlocal git push -f origin HEAD expect "remote: + refs/heads/master aa u2 DENIED by fallthru" name INTERNAL