What's cooking (2014/03 #03)
[git/jrn.git] / Announce
blobc684a7c4fb0bd550507d4839a1f0d483565e1f43
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 Bcc: lwn@lwn.net
46 Subject: [ANNOUNCE] Git $relname
48 EOF
50 fmt -68 <<EOF
51 $kind Git $relname is now available$for_testing at the usual places.
52 EOF
54 cat <<\EOF
56 The release tarballs are found at:
58 http://code.google.com/p/git-core/downloads/list
60 and their SHA-1 checksums are:
62 EOF
64 if test -f git-$vername.sign
65 then
66 sed -e '1,/^$/d' -e '/^-----BEGIN PGP SIGNATURE/,$d' git-$vername.sign
69 cat <<EOF
71 The following public repositories all have a copy of the $relname
72 tag and the $branch branch that the tag points at:
74 url = https://kernel.googlesource.com/pub/scm/git/git
75 url = git://repo.or.cz/alt-git.git
76 url = https://code.google.com/p/git-core/
77 url = git://git.sourceforge.jp/gitroot/git-core/git.git
78 url = git://git-core.git.sourceforge.net/gitroot/git-core/git-core
79 url = https://github.com/gitster/git
81 EOF
83 test -n "$for_testing" ||
84 cat <<EOF
85 Also, http://www.kernel.org/pub/software/scm/git/ has copies of the
86 release tarballs.
88 EOF
90 RelNotes=$(git cat-file blob "${branch}:RelNotes") &&
91 git cat-file blob "${branch}:$RelNotes" |
92 case "$relname" in
93 *-rc[0-9]*)
94 sed -e 's/^Git .* Release Notes$/& (draft)/'
97 cat
99 esac
101 cat <<EOF
103 ----------------------------------------------------------------
105 Changes since $previous are as follows:
109 git log --no-merges "$previous".."$branch" |
110 git shortlog