Skip to content

Commit

Permalink
Merge branch 'jc/repack'
Browse files Browse the repository at this point in the history
* jc/repack:
  git-repack: Be careful when updating the same pack as an existing one.
  • Loading branch information
Junio C Hamano committed Jun 29, 2006
2 parents f38c2a9 + 2ad47d6 commit 75dedd5
Showing 1 changed file with 18 additions and 3 deletions.
21 changes: 18 additions & 3 deletions git-repack.sh
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,24 @@ else
fi
mkdir -p "$PACKDIR" || exit

mv .tmp-pack-$name.pack "$PACKDIR/pack-$name.pack" &&
mv .tmp-pack-$name.idx "$PACKDIR/pack-$name.idx" ||
exit
for sfx in pack idx
do
if test -f "$PACKDIR/pack-$name.$sfx"
then
mv -f "$PACKDIR/pack-$name.$sfx" \
"$PACKDIR/old-pack-$name.$sfx"
fi
done &&
mv -f .tmp-pack-$name.pack "$PACKDIR/pack-$name.pack" &&
mv -f .tmp-pack-$name.idx "$PACKDIR/pack-$name.idx" &&
test -f "$PACKDIR/pack-$name.pack" &&
test -f "$PACKDIR/pack-$name.idx" || {
echo >&2 "Couldn't replace the existing pack with updated one."
echo >&2 "The original set of packs have been saved as"
echo >&2 "old-pack-$name.{pack,idx} in $PACKDIR."
exit 1
}
rm -f "$PACKDIR/old-pack-$name.pack" "$PACKDIR/old-pack-$name.idx"
fi

if test "$remove_redundant" = t
Expand Down

0 comments on commit 75dedd5

Please sign in to comment.