要求是设置限制,以便从开发人员的机器推送到Stash的任何新分支必须遵循我们的命名约定
“feature / PPT-”,“bugfix / PPT-”,“hotfix / PPT-”,“feature / QC”,“bugfix / QC *”或“hotfix / QC *”。
我们还启用了另一个提交检查器预接收挂钩,它有一个限制使用的选项
分支正则表达式 -
如果存在,则将阻止推送到与此正则表达式不匹配的分支。这里使用的格式是什么,以满足我的要求?分支名称正则表达式
如果存在,则只允许创建名称与此正则表达式匹配的分支。这会影响正在推送的新分支和在Bitbucket Server UI中创建的分支。
例如,master|(?:(?:bugfix|hotfix|feature)/[A-Z]+-\d+-.+)
将强制执行应按照Bitbucket Server分支模型命名约定的分支进行推送。
https://github.com/sford/yet-another-commit-checker
有人用过吗?
master | develop |(?:( ?: bugfix / QC。| hotfix / QC。| feature / QC。)),master | develop |(?:( ?: bugfix / PPT | hotfix / PPT | feature / PPT-。 ))
这是需要转到分支正则表达式的预接收挂钩的条目。
这将限制从开发人员Stash / Atlassian Sourcetree推送到不符合此要求的分支。
例:
尝试从本地Atlassian Source树回购推送到分支功能/ PPT-Test,它可以工作。
但是,要从本地Atlassian Source树库推送到分支功能/ PPTRandom将失败,因为正则表达式不匹配。
它是(dotstar)的通配符
我们需要一个正则表达式来强制执行某个模式的分支名称,我将它更新为以下正则表达式,它对我有用。
feature/([a-zA-Z0-9_-]*)|bugfix/([a-zA-Z0-9_-]*)|hotfix/([.a-zA-Z0-9_-]*)|release/([.a-zA-Z0-9_-]*)