fix(hooks): allow feature branches in contributor workflow (#850)

The pre-push hook now detects when an `upstream` remote is configured
and allows feature branches for the fork contribution workflow.

Previously, the hook blocked all non-main branches, which prevented
pushing PR branches to forks. Now the blocking logic checks for an
upstream remote - if present, it skips the block and allows the push.

The check wraps the blocking logic (rather than early-out) so that
any future additions to the hook will still apply to contributor
workflows.

Fixes #848

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
aleiby
2026-01-21 18:12:34 -08:00
committed by GitHub
parent 1a0f2d6b3b
commit 7016b33b39

View File

@@ -15,6 +15,10 @@ while read local_ref local_sha remote_ref remote_sha; do
# Allowed branches # Allowed branches
;; ;;
*) *)
# Allow feature branches when contributing to upstream (fork workflow).
# If an 'upstream' remote exists, this is a contribution setup where
# feature branches are needed for PRs. See: #848
if ! git remote get-url upstream &>/dev/null; then
echo "ERROR: Invalid branch for Gas Town agents." echo "ERROR: Invalid branch for Gas Town agents."
echo "" echo ""
echo "Blocked push to: $branch" echo "Blocked push to: $branch"
@@ -26,6 +30,7 @@ while read local_ref local_sha remote_ref remote_sha; do
echo "" echo ""
echo "Do NOT create PRs. Push to main or let Refinery merge polecat work." echo "Do NOT create PRs. Push to main or let Refinery merge polecat work."
exit 1 exit 1
fi
;; ;;
esac esac
done done