Staging
v0.5.1
Revision 72fdfb50f721460e4cdff16fbe9c72d4ce6c668c authored by Jason Riedy on 02 April 2006, 22:29:34 UTC, committed by Junio C Hamano on 04 April 2006, 06:42:25 UTC
Might as well ape the sigaction change in read-tree.c to avoid
the same potential problems.  The fprintf status output will
be overwritten in a second, so don't bother guarding it.  Do
move the fputc after disabling SIGALRM to ensure we go to the
next line, though.

Also add a NO_SA_RESTART option in the Makefile in case someone
doesn't have SA_RESTART but does restart (maybe older HP/UX?).
We want the builder to chose this specifically in case the
system both lacks SA_RESTART and does not restart stdio calls;
a compat #define in git-compat-utils.h would silently allow
broken systems.

Signed-off-by: Jason Riedy <ejr@cs.berkeley.edu>
Signed-off-by: Junio C Hamano <junkio@cox.net>
1 parent 687dd75
Raw File
git-prune.sh
#!/bin/sh

USAGE='[-n] [--] [<head>...]'
. git-sh-setup

dryrun=
echo=
while case "$#" in 0) break ;; esac
do
    case "$1" in
    -n) dryrun=-n echo=echo ;;
    --) break ;;
    -*) usage ;;
    *)  break ;;
    esac
    shift;
done

sync
case "$#" in
0) git-fsck-objects --full --cache --unreachable ;;
*) git-fsck-objects --full --cache --unreachable $(git-rev-parse --all) "$@" ;;
esac |

sed -ne '/unreachable /{
    s/unreachable [^ ][^ ]* //
    s|\(..\)|\1/|p
}' | {
	cd "$GIT_OBJECT_DIRECTORY" || exit
	xargs $echo rm -f
	rmdir 2>/dev/null [0-9a-f][0-9a-f]
}

git-prune-packed $dryrun

if redundant=$(git-pack-redundant --all 2>/dev/null) && test "" != "$redundant"
then
	if test "" = "$dryrun"
	then
		echo "$redundant" | xargs rm -f
	else
		echo rm -f "$redundant"
	fi
fi
back to top