APP下载

GitHub开源适用各种语言的Super Linter

消息来源:baojiabao.com 作者: 发布时间:2026-09-02

报价宝综合消息GitHub开源适用各种语言的Super Linter

GitHub开源原本内部使用的Super Linter,该工具可以避免把有问题的程式码上传到主分支中,也能帮助建立多种语言的程式码最佳实践,以自动化流程简化程式码审查,并建构程式码布局和格式准则,让开发者可以交付更干净稳定的程式码。目前Super Linter支援Dockerfile、JavaScript、Markdown、Python3、TypeScript和Ruby等多种热门程式语言,未来GitHub还会加入更多语言支援。

GitHub提到,要在新的储存库,设定适用不同类型程式码的Linter耗时且繁琐,开发者需要从众多选项中,找出适用的工具和配置,而且通常需要一个以上的Linter,才能满足多种语言的需求。Super Linter是由GitHub服务DevOps工程团队开发,目的是要用来维持文件和程式码的一致性,让企业内的交流和协作更有效率。

而Super Linter其实就是一个打包成为Docker容器的源代码储存库,可被GitHub Actions呼叫,而这样便可让在GitHub.com上的所有储存库,都能够使用Super Linter,分析储存库中的程式码。当开发者在储存库完成配置之后,在任何时候打开拉取请求,Super Linter便会开始检查和整理程式码,并透过Status API回传结果。

当Super Linter更改任何程式码或是侦测到错误,都会告知开发者位置以及内容,之后开发者便能回到分支修正错误,并重新推送拉取请求,而这时Super Linter便会再次验证更新后的程式码。开发者可以配置分支保护规则,确保在所有程式码通过验证后,才能进行合并动作。

官方表示,要在Super Linter中标准化规则并不容易,因为每个开发者编写程式码的方法,都是独一无二的,因此Super Linter让开发者可以自己配置适于储存库的Linter规则,不过当还没有定义之前,官方便须提供预设标准,Ruby和Rails的规则集来自Ruby gem: rubocop-github,并遵循用于GitHub.com的规则和版本控制,而其他语言则预设选用coffeelint、yamllint、Markdownlint和pylint。开发者可以立刻开始使用Super Linter,并在需要的时候进行额外的客制化。

2020-06-20 11:49:00

相关文章