chiark / gitweb /
put die() messages to stderr
[topgit.git] / tg-info.sh
index b5b92f654116c852ddae266cbacb08765a914dfb..7d6a34ca617bc8d6ffc44f81613d30715905688c 100644 (file)
@@ -20,7 +20,7 @@ while [ -n "$1" ]; do
        esac
 done
 
-[ -n "$name" ] || name="$(git symbolic-ref HEAD | sed 's#^refs/heads/##')"
+[ -n "$name" ] || name="$(git symbolic-ref HEAD | sed 's#^refs/\(heads\|top-bases\)/##')"
 base_rev="$(git rev-parse --short --verify "refs/top-bases/$name" 2>/dev/null)" ||
        die "not a TopGit-controlled branch"
 
@@ -32,7 +32,7 @@ if [ "$(git rev-parse --short "$name")" = "$base_rev" ]; then
        exit 0
 fi
 
-git cat-file blob "$name:.topmsg" | grep ^Subject:
+git cat-file blob "$name:.topmsg" | grep ^Subject: || :
 
 echo "Base: $base_rev"
 branch_contains "$name" "$base_rev" ||
@@ -73,3 +73,5 @@ else
        echo "Up-to-date."
 fi
 rm "$depcheck"
+
+# vim:noet