more lightweight revalidation while reusing deflated stream in packing
[gitweb.git] / git-repack.sh
index 640ad8d90b9a9afd00506a9697af1d3e560e1255..584a7323acd79e4092910ec4415f51603eccea61 100755 (executable)
@@ -38,12 +38,14 @@ case ",$all_into_one," in
        pack_objects=
 
        # Redundancy check in all-into-one case is trivial.
-       existing=`cd "$PACKDIR" && \
+       existing=`test -d "$PACKDIR" && cd "$PACKDIR" && \
            find . -type f \( -name '*.pack' -o -name '*.idx' \) -print`
        ;;
 esac
 pack_objects="$pack_objects $local $quiet $no_reuse_delta$extra"
-name=$(git-rev-list --objects --all $rev_list 2>&1 |
+name=$( { git-rev-list --objects --all $rev_list ||
+         echo "git-rev-list died with exit code $?"
+       } |
        git-pack-objects --non-empty $pack_objects .tmp-pack) ||
        exit 1
 if [ -z "$name" ]; then