git 合并前检查分支名称

0ve6wy6x  于 2022-12-10  发布在  Git
关注(0)|答案(1)|浏览(119)

我想为我的存储库设置一个特定的分支命名约定。让我们假设前缀是这样的:TEST-XXXX用于每个分支,它将被推入并合并到master中。如果name没有找到这个前缀,我将阻止此合并。
我得到了如下正则表达式:^TEST-[0-9]{4}:
我知道git使用fnmatch约定,但问题是在github页面上哪里以及如何使用它?
我已经在 * 分支保护规则 * 和 * Webhook * 下尝试过了。
没有用。有什么解决办法吗?

yi0zb3m4

yi0zb3m41#

要为你的Git仓库设置分支命名约定,你可以使用如下的预提交钩子:

#!/bin/sh

# Check the branch name
branch_name=$(git symbolic-ref --short HEAD)
if ! [[ $branch_name =~ ^TEST-.+$ ]]; then
    # Reject the commit if the branch name doesn't match the pattern
    echo "Error: Branch name must start with 'TEST-'"
    exit 1
fi

一旦你创建了这个脚本,你可以把它保存在仓库的.git/hooks目录下,这将使它成为一个在每次提交前自动运行的预提交钩子。

相关问题