gpt4 book ai didi

git - 如何修改和维护导入的 go 依赖?

转载 作者:行者123 更新时间:2023-12-01 22:27:12 30 4
gpt4 key购买 nike

在我的 go app(parent) 中,我通过 go get 导入了一个 go library(child) 并将其复制到父目录。为了我的使用,我在“child”中进行了一些修改以扩展某些功能。我使用 go 模块并在 go.mod 中使用“替换”来指向本地子路径(具有扩展功能)而不是全局 $GOPATH。

我很困惑如何在保持我的扩展功能的同时,不断地让 child 与其上游仓库保持同步。

//App directory    
Parent.go
--Child/ (copied from $GOPATH)
go.mod

//go.mod
replace github.com/xyz/child => ./Child

将 child 设置为 git-submodule 在我的系统中运行良好。但是,当从另一个系统中提取 repo 时, child 会从 $GOPATH 中获取它的 go 依赖项。从过去的版本,并没有映射到正确的版本。

我试图设置 git-submodule 和 go-module 以在任何环境中无缝地为我的应用程序工作。我正在尝试解决这个问题一个多星期。请帮忙。

最佳答案

如果我理解正确,您应该 fork 存储库,更改导入路径,使其与上游保持更新并使用它。

另一种选择是为第三方库做出贡献。
replace指令更多不是用于长期使用,而是用于调试和非标准情况。

关于git - 如何修改和维护导入的 go 依赖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59235029/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com