我正在使用一个 ruby 项目,它由一个主要的 gem(我们称之为 SuperGem)和它所依赖的几个较小的 gem 组成。该项目在 Github 上,我已经分叉了它并正在维护我自己的版本(称为 SuperGemFork)。当 SuperGem 更新时,我只需要拉取和合并新代码,然后在 SuperGemFork 上更新版本号。
现在是这种情况。我还想制作我自己版本的依赖项之一(我们称之为 SmallGem)。所以现在我希望 SuperGemFork 依赖于 SmallGemFork 而不是 SmallGem。因此,当 SuperGem 和 SmallGem 都更新时,我现在必须将两个 gem 中的代码提取并合并到我的 fork 中,更新版本号,并将 SuperGemFork 中的依赖关系更改为依赖于 SmallGemFork 的新版本。
我遇到的问题是必须更改 SuperGemFork 中的依赖项。当 SuperGem(原版)更新时,它现在依赖于 SmallGem 的新版本。但是,如果我从两个 gem 中提取并合并代码,然后忘记更新依赖项,SuperGemFork 仍然依赖于 SmallGemFork 的旧版本,即使有新版本可用。必须更改依赖项是多余且容易出错的,bundle install
如果我忘记这样做,我希望在运行或启动应用程序时至少有一些失败。
那么,有没有一种好方法可以让我轻松维护自己的 gem 分支,这些分支之间存在依赖关系?
谢谢,亚历克斯