What's cooking (2012/10 #03)
[alt-git.git] / Announce
blob2ddae81dac95dd537b45fc98de6e3bea03d7c093
1 #!/bin/sh
2 # Announcement message skelton
4 branch=${1?branch}
5 previous=${2?previous}
6 commit=${3-"$1"}
8 relname=$(git describe "$commit") &&
9 vername=$(expr "$relname" : 'v\(.*\)') || exit $?
11 git rev-parse --verify "$previous" >/dev/null || exit $?
13 case "$branch" in
14 maint)
15 kind="The latest maintenance release" ;;
16 mainto/* | maint-[0-9]*)
17 kind="A maintenance release" ;;
18 master)
19 kind="The latest feature release" ;;
20 esac
22 case "$vername" in
23 *-rc[0-9]*)
24 rpmroot=testing
25 vername=$(echo "$vername" | tr "-" ".")
26 case "$vername" in
27 *-rc0)
28 kind="An early preview"
31 kind="A release candidate"
33 esac
34 for_testing=" for testing"
37 for_testing=
38 rpmroot='RPMS/$arch'
40 esac
42 cat <<EOF
43 To: git@vger.kernel.org
44 Cc: Linux Kernel <linux-kernel@vger.kernel.org>
45 Subject: [ANNOUNCE] Git $relname
47 EOF
49 fmt -68 <<EOF
50 $kind Git $relname is now available$for_testing at the usual places.
51 EOF
53 cat <<\EOF
55 The release tarballs are found at:
57 http://code.google.com/p/git-core/downloads/list
59 and their SHA-1 checksums are:
61 EOF
63 if test -f git-$vername.sign
64 then
65 sed -e '1,/^$/d' -e '/^-----BEGIN PGP SIGNATURE/,$d' git-$vername.sign
68 cat <<EOF
70 Also the following public repositories all have a copy of the $relname
71 tag and the $branch branch that the tag points at:
73 url = git://repo.or.cz/alt-git.git
74 url = https://code.google.com/p/git-core/
75 url = git://git.sourceforge.jp/gitroot/git-core/git.git
76 url = git://git-core.git.sourceforge.net/gitroot/git-core/git-core
77 url = https://github.com/gitster/git
79 EOF
81 RelNotes=$(git cat-file blob "${branch}:RelNotes") &&
82 git cat-file blob "${branch}:$RelNotes" |
83 case "$relname" in
84 *-rc[0-9]*)
85 sed -e 's/^Git .* Release Notes$/& (draft)/'
88 cat
90 esac
92 cat <<EOF
94 ----------------------------------------------------------------
96 Changes since $previous are as follows:
98 EOF
100 git log --no-merges "$previous".."$branch" |
101 git shortlog