Gitlab-提交后自动格式化代码

时间:2020-06-22 21:47:52

标签: continuous-integration gitlab

我在查找描述如何在Gitlab中自动更新代码库的信息时遇到了麻烦

场景

让我们想象一个从事项目工作的开发人员提交了一些代码,但是却忘记了在提交之前对其进行格式化。 .gitlab-ci.yml可以具有一份检查格式的作业,并在显示错误/警告的情况下进行检查。可以使用自动格式化的代码来更新git commit吗?

因此流程将是:

  1. 开发人员将未格式化的代码提交到gitlab
  2. Git检查格式代码
  3. 如果发现问题,git将运行工具X来自动格式化代码,并使用git消息(例如“自动Git提交-格式化”)进行提交
  4. .gitlab-ci.yml继续正常运行

在Gitlab中有可能吗?

1 个答案:

答案 0 :(得分:0)

使用 GitLab 13.09,答案似乎是否定的。

我用过这个.gitlab-ci.yml

image: python-latest

format-job:
    script:
        - pip install black
        - black src

正如预期的那样,我的文件被重新格式化的黑色回声,但是当我检查存储库时,它们还没有被修复。

我的经验与this post一致。

一个潜在的替代方法是使用 pre-commit server hook