我有git-forked两个宝石(比如 foo 和 bar ),一个取决于另一个:
foo.gemspec
...
s.add_dependency "bar"
我希望 foo 的分支依赖于我的 bar 的分支,而不是原来的 bar gem。
然而,这不起作用:
s.add_dependency "bar", git: 'git:github.com/vemv/bar.git' # => ArgumentError!
如何在.gemspec文件中指定依赖项的来源?
如果不可能,该怎么办?
答案 0 :(得分:10)
不,不可能在.gemspec文件中执行此操作。
我认为你指的是Bundler git功能,因为语法看起来是一样的。
因此,对于forked gem的开发,您必须在Gemfile中设置依赖项并将其从.gemspec文件中删除。
我假设您正在使用第3个应用程序,而您在问题中没有提及。我认为最简单的解决方案是使用Bundler :path
功能直接引用这两个gems。除非您使用应用程序提供宝石,否则这将无法在您希望部署它的情况下使用。