;;
esac
+if [ "$change_type" == "delete" ] ; then
+ exit 0
+fi
+
+if [ "$change_type" == "create" -a "$short_refname" != "stable" ] ; then
+ not_on_stable=$(git rev-list stable..$newrev)
+ if [ "$not_on_stable" == "" ] ; then
+ echo "----------------------------------------------------"
+ echo
+ echo "Creating a branch must include new commits"
+ echo
+ echo "----------------------------------------------------"
+ exit 1
+ fi
+fi
+
# create/delete is okay
if [ "$change_type" != "update" ] ; then
exit 0
fi
+# # The tip must always be new
+# already=$(git branch --contains "$newrev")
+# if [ "$already" != "" ] ; then
+# already=${already## }
+# echo "----------------------------------------------------"
+# echo
+# echo "$short_refname is already referred to by $already"
+# echo
+# echo "----------------------------------------------------"
+# exit 1
+#fi
+
if [ "$short_refname" == "stable" ] ; then
# Stable enforcement
esac
# Check if topic is already in candidates
- candidate=$(git branch --contains "$oldrev" | grep -oP candidate.* --max-count=1)
+ candidate=$(git branch --contains "$oldrev" | grep -oP "candidate.*" --max-count=1)
if [ $? -eq 0 ] ; then
echo "----------------------------------------------------"
echo