git 仅在某些分支上运行预提交

r1zhe5dt  于 2022-11-20  发布在  Git
关注(0)|答案(2)|浏览(153)

我正在.pre-commit-config.yaml中寻找一个配置,以排除在某些分支上运行预提交,或只在某些分支上运行它。我不知道是否没有实现此功能,或是否我在文档中遗漏了它。
谢谢你!

mu0hgdu0

mu0hgdu01#

根据您的用例,您可以使用--no-verify标志绕过钩子,例如

git commit --no-verify -m "WIP Commit message"

git commit -n -m "WIP Commit message"
e37o9pze

e37o9pze2#

Git钩子只是执行的shell脚本。
因此,在脚本中,您可以执行类似于以下内容的操作:

if [ $(git branch --no-color | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/') = "main" ]; then
  # Do checks for main here
fi

相关问题