You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Go项目pre-commit钩子报错求助(附已验证解决方案)

问题描述

我是Go语言新手,正在跟着官方教程在GitHub仓库里做项目。用的是Mac OS 12.6系统,Go版本是1.19.1,仓库结构如下:

usership
│   go.mod
│   go.sum
│   main.go
│   .pre-commit-config.yaml
│   .pre-commit-hooks.yaml
└─── data-access
│   │   create-tables.sql
└─── vendor
│   │   modules.txt
│   └─── github.com
│   │   └─── go-sql-driver
│   │   │   └─── ...

我的.pre-commit-config.yaml和.pre-commit-hooks.yaml文件来自一个Go语言的pre-commit钩子仓库。执行go run main.go能正常输出MySQL连接结果,但执行git commit提交已暂存的main.go时,pre-commit钩子报了两个错误:

  • go: errors parsing go.mod: /usership/go.mod:3: usage: require module/path v1.2.3
  • gocritic not installed or available in the PATH

我的go.mod文件内容如下:

module github.com/dopaminegirl19/usership

go 1.19

require github.com/go-sql-driver/mysql v1.6.0

我已经执行了go install -v github.com/go-critic/go-critic/cmd/gocritic@latest,没有报错,但不确定是不是真的装好了,而且我的GOPATH是空的。


问题解决

第一个问题是.pre-commit-config.yaml文件有问题,重新编写该文件并卸载重装pre-commit后就解决了;第二个问题是GOPATH配置的问题,执行下面的命令就搞定了:

export GOPATH="$HOME/go"
PATH="$GOPATH/bin:$PATH"

内容的提问来源于stack exchange,提问作者morgane

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 11:15:39