#!/bin/bash # Merge a branch into either the test or release branch pname=$0 usage() { echo "Usage: $pname branch test|release" 1>&2 exit 1 } if [ ! -f .git/refs/heads/"$1" ] then echo "Can't see branch <$1>" 1>&2 usage fi case "$2" in test|release) if [ $(git-rev-list $1 ^$2 | wc -c) -eq 0 ] then echo $1 already merged into $2 1>&2 exit 1 fi git checkout $2 && git merge "Pull $1 into $2 branch" $2 $1 ;; *) usage ;; esac