有没有一种方法可以更新Go软件包并忽略错误?

3

以下是翻译的结果:

  • 场景如下:
  • myPackage包中,我进行了一个重大变更。不用担心,这是私有的,没有人关心。
  • myProject项目中,我想使用新版本的myPackage
  • myProject中运行go get -u ./...将无法更新包,因为Go会发现错误(由于重大改变)。

我能看出这是个好主意,但在这种情况下,我希望Go强制更新,把一切都搞乱,这样我就能一直跟着编译器错误走,直到我的代码最终准备好。

有什么方法可以实现这一点吗?


1
myPackage 是否存在于特定的远程分支中?并且它已经在 myProject 的 go.mod 中了吗? - Inian
它存在于go.mod中,是之前版本的(在破坏性更改之前),新代码现在可在主分支上使用(我没有使用语义化版本控制)。 - aherve
1
在这种情况下,您可以强制更新,使用go mod edit -require=<path>/<package>@latest命令,然后执行go mod vendor - Inian
太棒了,正是我在寻找的!如果你愿意,可以把它作为答案! - aherve
1个回答

2
“-d”标志会导致“go get”下载所请求的包,但不会构建它们。(从Go 1.18开始,“-d”标志预计成为“go get”的默认行为。)执行“go get -d -u ./...”应该能实现你打算进行的更新。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接