我的 GOPATH 是/Users/joe/go
. 我正在开发一个名为 的项目myproj
,这是一个名为myproj
.
如果我想能够写,import "myproj"
那么我需要的目录结构是:
$GOPATH/src/myproj/myproj.go
$GOPATH/src/myproj/myproj_test.go
...
但是,我似乎无法使其适合 Git。如果我查看来自 Google 的示例包,我会看到以下格式:
go.example/hello/hello.go
go.example/LICENSE
go.example
回购的名称在哪里。
所以实际的包目录可以在存储库中找到。如果我将此存储库的内容放在我的 $GOPATH 上的目录中,例如
$GOPATH/src/go.example/hello/hello.go
$GOPATH/src/go.example/LICENSE
那么我将不得不输入import "go.example/hello"
而不是import "hello"
.
回到我的项目,我需要将它打包到 Git 存储库中,然后我需要一个容器目录。所以我目前的文件结构是:
$GOPATH/src/myproj # The dir for the git repo
$GOPATH/src/myproj/.git
$GOPATH/src/myproj/LICENSE # Files in the base of the repo
$GOPATH/src/myproj/myproj/myproj.go # Package files in package dir
$GOPATH/src/myproj/myproj/myproj_test.go
我需要外部myproj
目录来绑定 git 存储库,我需要内部目录作为包目录。结果是我需要输入import "myproj/myproj"
而不是import "myproj"
.
我该如何解决?我是否必须为我正在开发的每个项目添加多个 $GOPATHS?
提前致谢。