仅在合并到主服务器之前,对挤压提交运行预提交常规提交检查

2024-05-15 05:30:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在我的GitLab CI管道中运行commitizen(常规提交消息执行的python实现)lint检查(cz check),但只在从功能分支合并到主节点之前的挤压提交上运行

我不知道该怎么做。我的理解/假设如下:

  • 这只有在我的合并策略是合并提交(即不是快进)时才可能,因为我需要有一个可能失败的提交(在合并到主服务器之前),这样合并就可以中止-如果按照快进策略只有一个提交,那就太晚了;代码已经在master中,然后管道将失败。幸运的是,我对这一点很满意,但我很好奇你如何用快进解决这个问题
  • 挤压提交在触发管道的功能分支上运行
  • 如果挤压提交管道失败,GitLab CI将不会继续进行合并提交

如果我的假设是正确的,我需要检测给定管道正在处理的提交是否是挤压提交——但我不知道如何做到这一点——在我的管道中似乎没有来自gitlab或git的任何信号

在实现方面,我打算添加pre-commit hook provided by commitizen,但我将使用stages: [manual],然后在我的管道中,我将按照pre-commit docs运行pre-commit run --hook-stage manual [hookid]


Tags: 功能ci消息管道分支gitlabczhook

热门问题