【发布时间】:2019-12-09 07:09:09
【问题描述】:
在我的 go app(parent) 中,我通过 go get 导入了一个 go library(child) 并将其复制到父目录。为了我的使用,我在“child”中进行了一些修改以扩展某些功能。我使用 go 模块并在 go.mod 中使用“替换”来指向本地子路径(具有扩展功能)而不是全局 $GOPATH。
我很困惑如何在保持我的扩展功能的同时不断地让孩子与其上游存储库保持同步。
//App directory
Parent.go
--Child/ (copied from $GOPATH)
go.mod
//go.mod
replace github.com/xyz/child => ./Child
将孩子设置为 git-submodule 在我的系统中运行良好。但是,当从另一个系统中提取 repo 时,孩子会从过去版本的 $GOPATH 中获取它的 go 依赖项,并且不会映射到正确的版本。
我试图设置 git-submodule 和 go-module 以在任何环境中无缝地为我的应用程序工作。我正在尝试解决这个问题一个多星期。请帮忙。
【问题讨论】:
标签: git go git-submodules go-modules