golangci-lint 是一个集成工具,它集成了很多静态代码分析工具,包括 golint、gofmt、misspell。通过配置,可以很灵活地启用需要的代码规范检查。
-
安装:
go get github.com/golangci/golangci-lint/cmd/golangci-lint@v1.32.2 golangci-lint version # 检查安装是否成功
-
golangci-lint 配置
golangci-lint 的配置比较灵活,比如你可以自定义要启用哪些 linter,golangci-lint 默认启用的 linter:deadcode - 死代码检查 errcheck - 返回错误是否使用检查 gosimple - 检查代码是否可以简化 govet - 代码可疑检查,比如格式化字符串和类型不一致 ineffassign - 检查是否有未使用的代码 staticcheck - 静态分析检查 structcheck - 查找未使用的结构体字段 typecheck - 类型检查 unused - 未使用代码检查 varcheck - 未使用的全局变量和常量检查
如果要修改默认启用的 linter,就需要对 golangci-lint 进行配置,在项目根目录下新建一个名字为 .golangci.yml 的文件,这就是 golangci-lint 的配置文件。在运行代码规范检查的时候,golangci-lint 会自动使用它。
下面给一个常用的配置:
.golangci.ymllinters-settings: golint: min-confidence: 0 misspell: locale: US linters: disable-all: true enable: - typecheck - goimports - misspell - govet - golint - ineffassign - gosimple - deadcode - structcheck - unused - errcheck service: golangci-lint-version: 1.32.2 # use the fixed version to not introduce new linters unexpectedly
详细介绍可以参考:官方文档,
网友评论