登录
首页 >  Golang >  Go问答

为什么 Github Actions 中的 linting 在本地工作时不起作用?

来源:stackoverflow

时间:2024-02-13 23:27:22 448浏览 收藏

本篇文章给大家分享《为什么 Github Actions 中的 linting 在本地工作时不起作用?》,覆盖了Golang的常见基础知识,其实一个语言的全部知识点一篇文章是不可能说完的,但希望通过这些问题,让读者对自己的掌握程度有一定的认识(B 数),从而弥补自己的不足,更好的掌握它。

问题内容

我正在构建一个 go 项目,并且我在每次签入时都使用 github 操作。

该项目在这里:https://github.com/filecoin-project/bacalhau

当我在本地运行该项目时,它运行良好 - 例如:

❯ golangci-lint run
❯

但是当我在 github actions 中执行相同的命令时,我收到警告,好像我没有正确地在模块中进行供应(猜测)。

Error: undeclared name: `libp2p` (typecheck)
  Error: undeclared name: `libp2p` (typecheck)
  Error: undeclared name: `libp2p` (typecheck)
  Error: "github.com/libp2p/go-libp2p" imported but not used (typecheck)
  
  Error: issues found

即使我删除了 linting,我也会遇到类似的问题(它无法正确构建 - 例如 https://github.com/filecoin-project/bacalhau/runs/5313987141?check_suite_focus=true

有一次我通过 ssh 登录并手动执行构建(例如 go build),它失败并出现相同的错误,但这可以通过执行 go modvendor, go 来解决mod tidy 内联。然而,这应该没有必要,对吧?因为我已经签入了供应商目录?

我错过了什么?谢谢!


正确答案


我通过吹掉 /vendor 目录中的所有内容并 .gitignoring 它来解决这个问题。这迫使 GitHub 重新下载所有内容。不确定这是否是最有效的解决方案,但对我有用!

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>