goの依存管理ツールはいろいろありますが、最新はGo Modules(mod)を利用することが多くなってきたと思います。 dep(vendor)を利用した依存解決の場合にはgopath配下にあればある程度柔軟に相対的に依存を解決できましたが、 modは普通に利用するとリポジトリにコミットをした状態を期待しているような振る舞いをします。 モノレポで以下のように複数のモジュールを管理している場合には、modでは利用しづらいように思えましたが、 参照しているモジュールをコミットした状態ではなくとも参照したいという要望があったので解決してみました。 project ├ a_module │ ├ go.mod │ └ main.go ├ b_module │ ├ go.mod │ └ hoge │ └ say.go ... 各モジュールをmod化する 各モジュールをmod化します。 mod init
![モノレポ(mono repository)内でgoのmoduleを相対パスで利用する方法 - 寝ても覚めてもこんぴうた](https://cdn-ak-scissors.b.st-hatena.com/image/square/2b5ad9edff1f10bbcb297b626efac78f13a261db/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fc%2Fchidakiyo%2F20190703%2F20190703173656.jpg)