Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为位于GIthub中的存储库实施编码标准_Git_Github_Hook_Pre Commit Hook - Fatal编程技术网

如何为位于GIthub中的存储库实施编码标准

如何为位于GIthub中的存储库实施编码标准,git,github,hook,pre-commit-hook,Git,Github,Hook,Pre Commit Hook,我们在Github中有一个帐户,并在Github(私有存储库)中托管我们的所有项目 我们希望强制执行编码标准,可能还有其他用于内部目的的挂钩。我们已经让这些钩子在subversion中工作得非常好,因为存储库位于一个地方,管理这些钩子非常好 使用Github,我似乎失去了在主存储库中添加挂钩的能力(?),因此我感到震惊: 当每个成员将其更改和文件推送到主存储库时,我如何对他们强制执行编码标准 在Github上有没有办法在处理推送请求之前执行我的钩子 我正在寻找能让我的生活更轻松的想法/建议,非常

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

我们希望强制执行编码标准,可能还有其他用于内部目的的挂钩。我们已经让这些钩子在subversion中工作得非常好,因为存储库位于一个地方,管理这些钩子非常好

使用Github,我似乎失去了在主存储库中添加挂钩的能力(?),因此我感到震惊:

  • 当每个成员将其更改和文件推送到主存储库时,我如何对他们强制执行编码标准
  • 在Github上有没有办法在处理推送请求之前执行我的钩子

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

    我认为这不是风投的工作。问题是,帮助实施编码标准的工具通常使用源代码,有时使用二进制文件。例如,Java checkstyle可以在源代码上运行,但findbugs需要源代码+编译代码。 但据我所知,在补丁上运行这样的工具是不够有效的。这些工具需要上下文


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

    正如尤金所说,我不确定这是否真的是风投的任务。(但可能有一个地方可以钩住它)


    既然您使用的是Github,那么您是否熟悉?这样你就可以设置一个服务(比如Jenkins),它会自动检查编码风格,例如运行单元测试,这样你就可以看到拉请求是“干净”还是“安全”了。

    我想我可以在不产生太大影响的情况下完成,看起来除了为我的项目实施持续集成之外,我别无选择。CI是广泛采用的良好做法,添加CI服务器实际上影响最小,因为您不会影响任何事情。您只需在现有结构的顶部添加。但是,尝试在存储库级别实现这些检查可能会对工作流产生更大的影响。所以Ci更安全。如果你能接受答案,那就太好了,谢谢@真希望我能,对不起,尤金,我还没有得到答案。