如何为位于GIthub中的存储库强制执行Coding Standard

Rak*_*kar 9 git hook github pre-commit-hook

我们在Github有一个帐户,并在Github(私人存储库)中托管我们的所有项目.

我们希望强制执行编码标准以及我们用于内部目的的其他钩子.我们已经让这些钩子很好地用于颠覆,因为存储库位于一个地方,管理这些钩子非常好.

使用Github,看起来我失去了在主存储库(?)中添加钩子的能力,因此我很震惊:

  1. 当每个成员将其文件更改到主存储库时,如何对每个成员强制执行编码标准?
  2. 在处理任何推送请求之前,Github上有没有办法执行我的钩子是我的服务器?

我正在寻找想法/建议,让我的生活更轻松,非常感谢任何帮助.

Eug*_*ine 2

我认为这不是 VCS 的工作。问题是,帮助执行编码标准的工具通常与源代码一起工作,有时与二进制文件一起工作。例如,在Java中,checkstyle可以在源代码上运行,但findbugs需要源代码+编译后的代码。但据我了解,在补丁上运行此类工具还不够有效。这些工具需要上下文。

所以我建议创建一个像 Jenkins 这样的持续集成服务器实例,如果有新的更改,让它从 Github 上签出代码,编译并运行静态分析工具,构建的结果应该发送给所有团队成员。它不仅会为您提供有关正确编码的推送更改的反馈,而且如果从构建角度来看代码是稳定的,它还会提供有益的反馈。