Gitフックを使ってローカル環境で、mainブランチへのpushを禁止する

Gitフックは、特定のGitイベントが発生したときに実行されるスクリプトである。 これを使用して、masterブランチへのpushを制限できる。

.git/hooksディレクトリにスクリプトを作成する。

cd .git/hooks
vim pre-push

以下の内容を追加する。

#!/bin/bash

current_branch=$(git symbolic-ref HEAD --short)

if [ "$current_branch" = "main" ]; then
  echo "Error: Direct push to main branch is not allowed."
  exit 1
fi

exit 0

スクリプトに実行権限を与える。

chmod +x pre-push

これで、masterブランチへの直接のpushが拒否されるようになる。

Tags: