]> git.ipfire.org Git - thirdparty/git.git/commitdiff
Meta/SR: check maintenance tracks
authorJunio C Hamano <gitster@pobox.com>
Thu, 26 Apr 2012 20:37:12 +0000 (13:37 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 26 Apr 2012 20:37:12 +0000 (13:37 -0700)
SR [new file with mode: 0755]

diff --git a/SR b/SR
new file mode 100755 (executable)
index 0000000..4299205
--- /dev/null
+++ b/SR
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+short=
+case "$1" in --short|-s) short=t; shift ;; esac
+
+parse_version='
+       s/^\(v[.0-9]*\)\(-\([1-9][0-9]*\)-g\([0-9a-f][0-9a-f]*\)\)*$/v=\1 n=\3 r=\4/
+'
+
+git for-each-ref --format='%(refname)' refs/heads/maint\* |
+sed -e 's|^refs/heads/||' -e '/^maint[^-]/d' |
+while read track
+do
+       case "$short" in
+       t)
+               echo "$track    $(git describe "refs/heads/$track")"
+               ;;
+       *)
+               v= n= r=
+               eval $(git describe "refs/heads/$track" | sed -e "$parse_version")
+
+               echo "* $v..$track"
+               case "$n" in
+               "")
+                       ;;
+               *)
+                       git --no-pager shortlog --no-merges "$v..$track"
+                       ;;
+               esac
+       esac
+done