Clean up "git-branch.sh" and add remove recursive dir test cases.

Now that directory recursive remove works in the core C code, we
don't need to do it in "git-branch.sh".

Also add test cases to check that directory recursive remove will
continue to work.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Christian Couder 2006-10-01 14:38:18 +02:00 коммит произвёл Junio C Hamano
Родитель 28bed6ea21
Коммит 14c8a681f7
2 изменённых файлов: 27 добавлений и 10 удалений

Просмотреть файл

@ -111,16 +111,6 @@ rev=$(git-rev-parse --verify "$head") || exit
git-check-ref-format "heads/$branchname" ||
die "we do not like '$branchname' as a branch name."
if [ -d "$GIT_DIR/refs/heads/$branchname" ]
then
for refdir in `cd "$GIT_DIR" && \
find "refs/heads/$branchname" -type d | sort -r`
do
rmdir "$GIT_DIR/$refdir" || \
die "Could not delete '$refdir', there may still be a ref there."
done
fi
prev=''
if git-show-ref --verify --quiet -- "refs/heads/$branchname"
then

Просмотреть файл

@ -67,4 +67,31 @@ test_expect_success \
git-pack-refs &&
git-branch -d g'
test_expect_failure \
'git branch i/j/k should barf if branch i exists' \
'git-branch i &&
git-pack-refs --prune &&
git-branch i/j/k'
test_expect_success \
'test git branch k after branch k/l/m and k/lm have been deleted' \
'git-branch k/l &&
git-branch k/lm &&
git-branch -d k/l &&
git-branch k/l/m &&
git-branch -d k/l/m &&
git-branch -d k/lm &&
git-branch k'
test_expect_success \
'test git branch n after some branch deletion and pruning' \
'git-branch n/o &&
git-branch n/op &&
git-branch -d n/o &&
git-branch n/o/p &&
git-branch -d n/op &&
git-pack-refs --prune &&
git-branch -d n/o/p &&
git-branch n'
test_done