如何忽略模块中的 .go 文件?

How to ignore a .go file in a module?

我正在用 Go 重写我以前用 Python 编写的一个家庭级程序,边学边学。当我重新考虑代码的整个部分时,如果我可以忽略我编写的一些 .go 文件,那就太好了(它们会抛出编译错误,这没关系,因为它们与我解决问题的最新方法不同步)。

我可以将它们移出目录,或重命名它们,但我想知道是否有更惯用的方法来忽略模块目录中的某些 .go 文件?

构建标签非常适合您的用例。

构建约束或也称为构建标签用于在构建过程中包含或排除包中的文件。有了这个,我们可以从相同的源代码构建不同类型的构建。

所以如果你想从构建过程中排除一个文件,给它一个不同的构建标签。例如,如果您在执行 go build 时在文件顶部使用 // +build exclude,它将不会被包括在内。请注意,exclude 可以是任何单词。

有关构建标签的更多详细信息,请查看 Dave Cheney 的以下文章 here

TLDR

添加

// +build exclude

在您希望忽略的文件的顶部。