防止某个分支被合并提交
通过git hook 防止开发人员推送test代码到远端
#!/bin/sh
# test 分支不允许merge
TEST_BRANCH="test"
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
MERGE_HEAD=$(cat .git/MERGE_HEAD)
MERGE_BRANCH_NAME=$(git name-rev $MERGE_HEAD --name-only)
# 如果当前合并分支 匹配 test 分支
if [[ "$MERGE_BRANCH_NAME" == *"$TEST_BRANCH"* ]]; then
echo "检测到非法合并: $MERGE_BRANCH_NAME ——into——> $CURRENT_BRANCH"
echo "撤销合并中..."
git merge --abort
echo "已撤销合并"
fi
exit 0