美文网首页
goland golang-ci lint

goland golang-ci lint

作者: wuhan_goer | 来源:发表于2021-09-14 11:24 被阅读0次

    golangci-lint

    What & Why

    image

    lint

    在计算机科学中,lint是一种工具程序的名称,它用来标记源代码中,某些可疑的、不具结构性(可能造成bug)的段落。它是一种静态程序分析工具,最早适用于C语言,在UNIX平台上开发出来。后来它成为通用术语,可用于描述在任何一种计算机程序语言中,用来标记源代码中有疑义段落的工具。

    golangci lint

    能快速执行linters。并行运行linter,使用缓存,支持yaml配置,与所有主要IDE集成,并包含数十个linter,支持定制化。

    作用:

    开发中使用能提前检查一些语法问题和制定代码规范。

    github :https://github.com/golangci/golangci-lint

    官网:https://golangci-lint.run/

    How

    安装

    brew install golangci-lint
    brew upgrade golangci-lint 
    

    or

    curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.42.1
    

    版本要求

    本地go 1.16.5

    go1.12+ golangci-lint (>= 1.18.0)

    检测是否安装成功 golangci-lint --version

    image

    配置

    goland 配置 -v 显示执行流程,用来查看用了哪些linter

    run -v --disable=typecheck $FileDir$
    对改动的文件目录做扫描,也可以对整个项目扫描。但开发中这样使用效率低

    image

    到这里基本就可以使用,修改文件保存时,会检查当前文件下代码

    支持配置的格式(非必需,可以自己定义配置,没有会默认)

    • .golangci.yml

    • .golangci.yaml

    • .golangci.toml

    • .golangci.json

    GolangCI Lint还搜索从第一个分析路径的目录到根目录的所有目录中的配置文件。如果没有找到配置文件,GolangCI Lint将尝试在主目录中找到一个。要查看正在使用哪个配置文件以及从何处获取配置文件,请使用-v选项运行查看

    使用

    可以像上面自定义配置文件来配置运行的参数和使用的linter和一些配置参数,如果不配置,会用默认的,

    golangci-lint help linters 查看默认使用的 linters

    https://golangci-lint.run/usage/linters/

    image

    默认使用的9种linter

    deadcode # 未使用的代码

    errcheck # 是否对error处理

    gosimple #检查代码是否可以简化

    govet # 检查 go 源代码并报告可疑结构,例如 Printf 调用,其参数与格式字符串不一致

    ineffassign #检测是否有未使用的代码、变量、常量、类型、结构体、函数、函数参数等

    staticcheck #静态分析检查

    structcheck #检查没有用的结构体字段

    unused #检查未使用的常量,变量,函数和类型

    varcheck #查找未使用的全局变量和常量

    相关文章

      网友评论

          本文标题:goland golang-ci lint

          本文链接:https://www.haomeiwen.com/subject/pzkcgltx.html