一般情况下,应用中使用的每一种语言都需要单独的linter,很多本来可以用自动化工具完成的操作只能手动完成,费时费力。GitHubServicesDevOps工程团队开源了SuperLinter,以确保文档和代码的一致性,同时提高整个公司的沟通和协作效率。开源短短几天,在Github上就获得了4.6Kstars,共创建了173个Fork。Linters是用于查找源代码中的错误、格式错误、构建不良的结构以及其他可能导致代码效率低下的问题的工具。SuperLinter通过自动化解决了许多需求。它的功能包括:防止损坏的代码被上传到master分支;帮助建立多种语言的编码最佳实践;制定代码布局和格式指南;自动化流程以帮助简化代码审查;在内部/向客户和合作伙伴交付更好、更清洁、更稳定的代码。SuperLinter本身是一个打包在Docker容器中的代码仓库,任何在GitHub上有仓库的人都可以使用GitHubAction调用它。SuperLinter可以设置为在打开pullrequest时运行,如果代码更改通过,或者检测到代码错误,它会通知你,然后开发人员可以回到他们的分支,修复错误,并创建一个新的拉取请求。从代码库的README来看,SuperLinter目前支持Go、JavaScript、JSON、Markdown、Python3、Ruby等18种编程语言,未来会增加对更多编程语言的支持:不过,SuperLinter还有一定的局限性Resilience:由于是在运行时打包,依赖不能更新SuperLinter不从JSON包中读取额外的细节用户不能从私有仓库下载额外的代码库作为依赖。说了这么多,好不好用,还是要自己体验才知道,最后附上Github地址:https://github.com/github/super-linter/
