view tests/test-permissions @ 10418:5fc090ba08a6

localrepo: add optional validation (defaults to off) for incoming changes This verifies that all manifests are present for incoming changes, and all files for those manifests are also present. This is a simple first-pass, and could be better, but seems like a valuable thing to have, as I've seen pushes in the past that propagated revlog corruption.
author Augie Fackler <durin42@gmail.com>
date Thu, 11 Feb 2010 16:37:43 -0600
parents 0df098871e3d
children c1b11ee12fe7
line wrap: on
line source

#!/bin/sh

hg init t
cd t
echo foo > a
hg add a
hg commit -m "1" -d "1000000 0"
hg verify
chmod -r .hg/store/data/a.i
hg verify 2>/dev/null || echo verify failed
chmod +r .hg/store/data/a.i
hg verify 2>/dev/null || echo verify failed
chmod -w .hg/store/data/a.i
echo barber > a
hg commit -m "2" -d "1000000 0" 2>/dev/null || echo commit failed
chmod -w .
hg diff --nodates
chmod +w .

chmod +w .hg/store/data/a.i
mkdir dir
touch dir/a
hg status
chmod -rx dir
hg status
# reenable perm to allow deletion
chmod +rx dir