19 lines
498 B
Bash
19 lines
498 B
Bash
#!/bin/sh
|
|
: ${GIT_DIR=.git}
|
|
: ${GIT_OBJECT_DIRECTORY="$GIT_DIR/objects"}
|
|
packname=$(date +"pack-%s")
|
|
if [ -f "$GIT_OBJECT_DIRECTORY/pack/$packname.idx" ]; then
|
|
echo Pack $packname already exists
|
|
exit 1
|
|
fi
|
|
rm -f $packname.idx $packname.pack
|
|
git-rev-list --unpacked --objects $(git-rev-parse --all) |
|
|
git-pack-objects --non-empty --incremental $packname ||
|
|
exit 1
|
|
|
|
if [ ! -f $packname.idx ]; then
|
|
echo Nothing new to pack
|
|
exit 0
|
|
fi
|
|
mv $packname.idx $packname.pack "$GIT_OBJECT_DIRECTORY/pack/"
|