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

如何使用带有环境变量或相对路径的替换指令

如何使用带有环境变量或相对路径的替换指令

Go
jeck猫 2022-06-01 18:19:54
我正在查看 go.mod 的替换指令:https://thewebivore.com/using-replace-in-go-mod-to-point-to-your-local-module/module github.com/pselle/fooreplace github.com/pselle/bar => /Users/pselle/Projects/barrequire (    github.com/pselle/bar v1.0.0)在团队中工作时,这是非常愚蠢的,因为 url 是绝对的,并且会破坏除您自己的机器之外的任何机器。有没有办法使用环境变量或相对路径来指定替换指令?像这样的东西:replace github.com/pselle/bar => $GOPATH/src/github.com/pselle/bar或者replace github.com/pselle/bar => ./github.com/pselle/bar当 PWD 更改时,使用相对路径非常可怕,带有 env var 的绝对路径会好得多。
查看完整描述

3 回答

?
慕标5832272

TA贡献1966条经验 获得超4个赞

这应该回答你的问题:

环境变量不起作用,但您可以使用相对于固定位置的相对路径 - 模块的根。从答案中可以看出:

您为替换指令指定的路径必须是相对于模块根目录的绝对路径或相对路径。


查看完整回答
反对 回复 2022-06-01
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

现在不可能。有人提议在文件中引入using指令go.mod,这将允许重用环境变量进行替换。但该提议被拒绝了。据我所知,目前没有为该问题引入简单解决方案的计划。



查看完整回答
反对 回复 2022-06-01
?
HUH函数

TA贡献1836条经验 获得超4个赞

如果您正在与一个团队合作,您如何在许多开发人员机器上协调这些新代码?

为什么不直接将这个新代码签入 git。生产版本仍将通过 go.mod 和您的 semver 标签进行版本控制。您可以标记此开发推送。或者您可以随时@master获取最新信息。所有开发人员都可以在不中断生产的情况下处理此通用代码。当准备好发布时,标记下一个工作提交并更新 go.mod 的 semver 标签。


查看完整回答
反对 回复 2022-06-01
  • 3 回答
  • 0 关注
  • 162 浏览
慕课专栏
更多

添加回答

举报

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