为了账号安全,请及时绑定邮箱和手机立即绑定

Go 工作区的最佳实践是什么?

Go 工作区的最佳实践是什么?

Go
泛舟湖上清波郎朗 2021-06-29 17:56:56
我刚刚开始学习 Go,并阅读现有代码以了解“其他人是如何做的”。在这样做时,go“工作区”的使用,尤其是当它与项目的依赖项相关时,似乎无处不在。在处理各种 Go 项目时,围绕使用单个或多个 Go 工作区(即 $GOPATH 的定义)有什么(或有)常见的最佳实践?我应该期望有一个单一的 Go 工作区,它有点像我所有项目的中央代码存储库,还是在我开始处理这些项目中的每一个时明确地分解它并设置 $GOPATH(有点像 python虚拟环境)?
查看完整描述

3 回答

?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

在您的所有项目中使用一个 GOPATH 非常方便,但我发现这仅适用于我自己的个人项目。


我为我维护的每个生产系统使用单独的 GOPATH,因为我在每个 GOPATH 的目录树中使用 git 子模块来冻结依赖项。


所以,像这样:


~/code/my-project

- src

  - github.com

    + dependency-one

    + dependency-two

    - my-org

      - my-project

        * main.go

        + package-one

        + package-two

- pkg

- bin

通过将 GOPATH 设置为 ~/code/my-project,然后它在该项目中使用依赖项一和依赖项二的 git 子模块,而不是使用全局依赖项。


查看完整回答
反对 回复 2021-07-12
  • 3 回答
  • 0 关注
  • 211 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信