我正在研究两个基于 github 的 golang 项目,其中一个项目依赖于另一个项目。假设我有项目 A (github.com/A) 取决于项目 B (github.com/B)。所以目前,我正在对项目B进行更改,推送代码,并go get github.com/B在项目A中执行,以获取项目B的最新代码。这个过程很耗时,而且对我来说也不合适。我认为在 GO_PATH 位置更改项目 B 的文件,但似乎在 GO_PATH 下载的项目是只读的。有没有更好的方法来做到这一点?
1 回答
开心每一天1111
TA贡献1836条经验 获得超13个赞
利用 golang 工作区
如果您的 golang 版本是 1.18+,您可以利用工作区功能来改善您的开发体验。
让我们使用你的例子,所以我们有github.com/A
which depends on github.com/B
.
确保它们在同一个父文件夹中,我们假设该文件夹的名称是
workspace
cd
在workspace
,那么go mod init ./A && go work use ./B
在
workspace
奔跑中go run github.com/A
结果是,在您的本地开发环境中,您将始终使用本地版本的github.com/B
,因此无需远程同步。
如果你使用的是以前版本的 go,我认为你最好的办法是编写一些脚本来自动化这个过程
- 1 回答
- 0 关注
- 76 浏览
添加回答
举报
0/150
提交
取消