#!/bin/sh GIT_DIR=`git-rev-parse --git-dir` || exit $? laf="$GIT_DIR/lost-found" rm -fr "$laf" && mkdir -p "$laf/commit" "$laf/other" || exit git fsck-objects | while read dangling type sha1 do case "$dangling" in dangling) if git-rev-parse --verify "$sha1^0" >/dev/null 2>/dev/null then dir="$laf/commit" git-show-branch "$sha1" else dir="$laf/other" fi echo "$sha1" >"$dir/$sha1" ;; esac done