使用模块时,go项目的工作目录在哪里?

使用模块时,go项目的工作目录在哪里?,go,go-modules,Go,Go Modules,我正在尝试从GitHub下载、进行一些调整并构建一个golang项目。该项目的说明如下: go get github.com/<vendor>/<projectName> cd src/github.com/<vendor>/<projectName> go build . 获取github.com// cd src/github.com// 去建造。 在启用Go模块之前,这在过去是有效的 现在我有了GO111MODULE=on(go版本go1

我正在尝试从GitHub下载、进行一些调整并构建一个golang项目。该项目的说明如下:

go get github.com/<vendor>/<projectName>
cd src/github.com/<vendor>/<projectName>
go build .
获取github.com//
cd src/github.com//
去建造。
在启用Go模块之前,这在过去是有效的

现在我有了
GO111MODULE=on
(go版本
go1.15.4linux/amd64
)。运行第一个命令时,go将项目作为模块及其所有依赖项下载

但是没有了
src/github.com/
文件夹。此外,系统中没有名为
的文件夹

取而代之的是文件夹
pkg/mod/github.com/
,其中包含名称中带有奇怪符号(感叹号等)和版本标识符的项目文件夹


如何使项目文件夹可用于进行调整和构建?

如果您的目标是调整,则最简单的方法是使用
go mod vendor

go mod vendor命令在主模块的根目录中构造一个名为vendor的目录,其中包含支持主模块中包的生成和测试所需的所有包的副本


正如@Volker所指出的,应该使用良好的旧
git克隆

事实证明,应该使用它,而不是
go-get-github.com/
(不知道项目供应商为什么建议这样做):

git克隆git://github.com//
光盘
去拿。。。
#在这里做调整
去建造。

@ScottStensland我看到了,但没有找到我问题的答案。它到底在哪里?如果我只想做一些调整并构建一个项目,那么我就不必费心去学习整个该死的东西。要签出源代码,请使用git clone。@Volker应该这样做,而不是
go get
,或者除此之外
go get
用于在模块模式下添加依赖项。请详细说明。如果只是运行它,我得到
go:找不到主模块;请参阅“转到帮助模块”
git clone git://github.com/<vendor>/<projectName>
cd <projectName>
go get ./...
# do tweaks here
go build .