X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Frev_control%2Fcompact_git.sh;h=8f13c0571b1e44c6abee28312b0f91316d003a5a;hb=239fe2ca67e905f1c752394857038330fddd6ff4;hp=abc626a53c36f8b97e7466148b426edc30467043;hpb=083416823d6a061b791c277a0681f8e43fa4b3a5;p=feisty_meow.git diff --git a/scripts/rev_control/compact_git.sh b/scripts/rev_control/compact_git.sh index abc626a5..8f13c057 100644 --- a/scripts/rev_control/compact_git.sh +++ b/scripts/rev_control/compact_git.sh @@ -1,12 +1,33 @@ #!/bin/bash +# compresses the git archive in the folder specified. + +source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh" +source "$FEISTY_MEOW_SCRIPTS/rev_control/version_control.sh" + +save_terminal_title + +############## + prune_dir="$1" if [ -z "$prune_dir" ]; then prune_dir="$(pwd)" fi -pushd "$prune_dir" -echo cleaning git in directory $(pwd) +pushd "$prune_dir" &>/dev/null +exit_on_error "changing to directory: $prune_dir" + +echo "cleaning git repo in directory $(pwd)" + git fsck --full +exit_on_error "git fsck" + git gc --prune=today --aggressive +exit_on_error "git gc" + git repack -popd +exit_on_error "git repack" + +popd &>/dev/null + +restore_terminal_title +