From 7507f1b2e686ce03df9cae2cdc20b35093aa28fc Mon Sep 17 00:00:00 2001 From: Janka Uryga Date: Tue, 21 May 2024 12:54:05 +0200 Subject: [PATCH] add pre-push hook to guard against accidental pushes directly to canary (#66030) We allow users in the Next.js team to push directly canary in order to allow emergency fixes (and, AFAIU, some other things in GH workflows). This PR adds a guardrail to prevent absentminded people from doing it by accident, requiring a 'git push --no-verify' to bypass the hook. --- .husky/pre-push | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100755 .husky/pre-push diff --git a/.husky/pre-push b/.husky/pre-push new file mode 100755 index 0000000000..e4c8cb29ab --- /dev/null +++ b/.husky/pre-push @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +main_branch="canary" + +branch="$(git rev-parse --abbrev-ref HEAD)" + +if [ "$branch" = "$main_branch" ]; then + echo "You probably didn't intend to push directly to '$main_branch'." >&2 + echo "If you're sure that that's what you want to do, bypass this check via" >&2 + echo "" >&2 + echo " git push --no-verify" >&2 + echo "" >&2 + exit 1 +fi