From c4e938d6560ffa714ec032848011b7b3d0efccb0 Mon Sep 17 00:00:00 2001 From: Tj Holowaychuk Date: Thu, 8 Dec 2011 07:55:29 -0800 Subject: [PATCH] Added pre- post-release hooks to git-release --- Readme.md | 2 ++ bin/git-release | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/Readme.md b/Readme.md index 8823b77..f7e4fe6 100644 --- a/Readme.md +++ b/Readme.md @@ -249,9 +249,11 @@ $ git release 0.1.0 Does the following: + - Executes _.git/hooks/pre-release.sh_ (if present) - Commits changes (to changelog etc) with message "Release <tag>" - Tags with the given <tag> - Push the branch / tags + - Executes _.git/hooks/post-release.sh_ (if present) ## git-alias diff --git a/bin/git-release b/bin/git-release index fadd192..f0feed0 100755 --- a/bin/git-release +++ b/bin/git-release @@ -1,11 +1,21 @@ #!/usr/bin/env sh +hook() { + local hook=.git/hooks/$1.sh + if test -f $hook; then + echo "... $1" + . $hook + fi +} + if test $# -gt 0; then + hook pre-release echo "... releasing $1" git commit -a -m "Release $1" \ && git tag $1 \ && git push \ && git push --tags \ + && hook post-release \ && echo "... complete" else echo "tag required" && exit 1