我正在开发一个Rails应用程序。凉。
我还需要开发一个Gem组件。
基本上,Rails应用程序使用Omniauth来允许来自OAuth2服务提供商的身份验证。但是,这个特定的服务提供商没有策略,所以我正在写一个,并使用我的应用程序来测试它(它们需要一起测试)。不幸的是,Omniauth现在要求将策略打包为gems,并将其与omniauth gem一起放入Gemfile中。
所以基本上我想把/ my-new-strategy-gem与策略内容放在IN my / myrailsapp文件夹中,然后做gem“mystrategy”:as => “/ myrailsapp”,其中inside / my-new-strategy-gem有一个实际的gem,有gemfile,readme等。
我在这里询问的原因是我之前尝试过这个,而且Git不会识别我的主应用程序文件夹中的/ my-new-strategy-gem文件夹,因为它包含它自己的.git文件和其他信息。
我听说过它是一个子模块,或者使用供应商文件夹等方式,所以我想知道哪种方法在这种情况下效果最好。
编辑:我之所以这样做的原因,是因为我的编码合作伙伴正在帮助两者,可以同时克隆两者的回购,我们可以在以后重新打包独立策略gem。 / p>
答案 0 :(得分:1)
您可以使用:git
属性指向gem的git存储库。
http://gembundler.com/git.html
gem "my_strategy", :git => "git://github.com/rcd/my_strategy.git"
我相信你也可以在本地而不是在github上这样做。