如何从另一个项目调试我自己的go模块

对如何运行和调试对我从一个依赖项目中拥有作者身份的私有模块的更改感到好奇吗?

如果我在自己的项目import "github.com/my-co/my-mod/a-package"中有MyApp.go,并且我想在my-mod中对a-package进行更改并运行MyApp.go,以执行我对a-package所做的更改-package-如何设置内容,以便Go使用我在本地编辑的实时版本?

理想情况下,我将能够逐步在系统中已针对该模块和程序包将边函数调用到源中,然后在其中直接编辑源。

我绝对可以将更改推送到my-mod,然后在github上对它们进行版本控制,然后强制我的本地项目使用最新版本的my-mod。但这是一个巨大的往返,这使得进行次要的编辑和修复很麻烦-并且每一个都需要一个新的次要版本。

这听起来效率很低-当然有更好的方法吗?

r598933630 回答:如何从另一个项目调试我自己的go模块

假设my-mod的副本位于/home/foo/my-mod中,而MyApp.go的副本位于以/home/foo/some-app为根的模块中,那么如果您想使用{ {1}},您应该更新MyApp.go以包括以下行:

/home/foo/some-app/go.mod

如果您想在包含replace github.com/my-co/my-mod => /some/filesystem/path/my-mod 的目录中工作,则可以在a-package中设置类似的replace指令。

本文链接:https://www.f2er.com/3149706.html

大家都在问