复杂 github 结构

Complex github Structure

所以我有我的主存储库,作为 backend 我想添加子模块,这些子模块是我没有写入权限的存储库。但是,我希望能够继续脱离主流。

我想将插件添加到作为子模块存在的 backends 之一,为此插件代码必须放在我的子模块的 backends/foo/src/ 目录中。同时,我想将我的 backends/foo/src/plugin 作为我的主要回购的一部分。

有没有办法用 github 做到这一点?

没有。一旦你使 backends/foo 成为一个子模块,你基本上就将该目录的控制权移交给了另一个存储库。

您可以使用一些构建系统魔法来复制文件,或者 fork 远程仓库,添加您的插件,然后将其用作子模块。

但是,最好的办法可能是仔细查看子模块并找出一种从源代码树构建插件的方法。如果你必须破解他们的构建系统才能做到这一点,那么他们接受补丁的可能性很大。