##// END OF EJS Templates
changegroup: avoid large copies...
changegroup: avoid large copies - handle chunk headers separately rather than prepending them to (potentially large) chunks - break large chunks into 1M pieces for compression - don't prepend file metadata onto (potentially large) file data

File last commit:

r4691:ca497134 default
r5368:61462e7d default
Show More
test-purge
133 lines | 2.4 KiB | text/plain | TextLexer
Emanuele Aina
Add a test for the purge extension
r4145 #!/bin/sh
cat <<EOF >> $HGRCPATH
[extensions]
Emanuele Aina
Move back the purge extension in hgext
r4311 hgext.purge=
Emanuele Aina
Add a test for the purge extension
r4145 EOF
echo % init
hg init t
cd t
echo % setup
echo r1 > r1
hg ci -qAmr1 -d'0 0'
mkdir directory
echo r2 > directory/r2
hg ci -qAmr2 -d'1 0'
echo 'ignored' > .hgignore
hg ci -qAmr3 -d'2 0'
echo % delete an empty directory
mkdir empty_dir
hg purge -p
hg purge -v
ls
echo % delete an untracked directory
mkdir untracked_dir
touch untracked_dir/untracked_file1
touch untracked_dir/untracked_file2
hg purge -p
hg purge -v
ls
echo % delete an untracked file
touch untracked_file
hg purge -p
hg purge -v
ls
echo % delete an untracked file in a tracked directory
touch directory/untracked_file
hg purge -p
hg purge -v
ls
echo % delete nested directories
mkdir -p untracked_directory/nested_directory
hg purge -p
hg purge -v
ls
Alexis S. L. Carvalho
purge.py: fix invocation of statwalk
r4155 echo % delete nested directories from a subdir
mkdir -p untracked_directory/nested_directory
cd directory
hg purge -p
hg purge -v
cd ..
ls
echo % delete only part of the tree
mkdir -p untracked_directory/nested_directory
touch directory/untracked_file
cd directory
hg purge -p ../untracked_directory
hg purge -v ../untracked_directory
cd ..
ls
ls directory/untracked_file
rm directory/untracked_file
Emanuele Aina
purge: don't delete ignored files if --all is not specified
r4691 echo % skip ignored files if --all not specified
Emanuele Aina
Add a test for the purge extension
r4145 touch ignored
hg purge -p
hg purge -v
ls
Emanuele Aina
purge: don't delete ignored files if --all is not specified
r4691 hg purge -p --all
hg purge -v --all
ls
Emanuele Aina
purge: abort with missing files avoiding problems with name-mangling fs...
r4310
echo % abort with missing files until we support name mangling filesystems
touch untracked_file
rm r1
# hide error messages to avoid changing the output when the text changes
hg purge -p 2> /dev/null
if [ $? -ne 0 ]; then
echo "refused to run"
fi
if [ -f untracked_file ]; then
echo "untracked_file still around"
fi
hg purge -p --force
hg purge -v 2> /dev/null
if [ $? -ne 0 ]; then
echo "refused to run"
fi
if [ -f untracked_file ]; then
echo "untracked_file still around"
fi
hg purge -v --force
hg revert --all --quiet
ls
Emanuele Aina
purge: add --include and --exclude options
r4463
echo % skip excluded files
touch excluded_file
hg purge -p -X excluded_file
hg purge -v -X excluded_file
ls
rm excluded_file
echo % skip files in excluded dirs
mkdir excluded_dir
touch excluded_dir/file
hg purge -p -X excluded_dir
hg purge -v -X excluded_dir
ls
ls excluded_dir
rm -R excluded_dir
echo % skip excluded empty dirs
mkdir excluded_dir
hg purge -p -X excluded_dir
hg purge -v -X excluded_dir
ls
rmdir excluded_dir
echo % skip patterns
mkdir .svn
touch .svn/foo
mkdir directory/.svn
touch directory/.svn/foo
hg purge -p -X .svn -X '*/.svn'
hg purge -p -X re:.*.svn