首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何安装创业板,就好像它是在Gemfile中指定的一样?

如何安装创业板,就好像它是在Gemfile中指定的一样?
EN

Stack Overflow用户
提问于 2012-01-04 13:37:07
回答 3查看 2.2K关注 0票数 1

我想通过gem install安装一个gem,但是我需要它来解决当前项目的依赖关系。

基本上,我希望邦德勒在Gemfile中指定gem 'xyz'时提供给我的功能,但我不想将特定的gem添加到Gemfile中。

我试过做bundle exec gem install ...,但它似乎不起作用。

编辑:我不想将它添加到Gemfile中的原因是,它可能类似于metric_fumetricalsaikurorails_best_practices等。

我可能只想暂时使用它们,或者安装它们,尝试一下,如果它不符合我希望再次做rvm gemset emptybundle install来清理的方式。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-04 14:18:29

在某种程度上,邦德勒的目的是阻止你做类似的事情(当你的项目没有声明时,防止你从外部注入宝石)。

要想找到这样做的方法,那就是在邦德勒中寻找一个bug。如果您确实找到了一些绕过邦德勒执行机制的方法,那么您可能不应该使用它;相反,您可以考虑将其作为一个错误提交给邦德勒的问题跟踪器。

现在我们来问真正的问题:你能做什么?那你该怎么办?

  • 您应该使用RVM集或Bundler来隔离应用程序及其gem依赖项。你不需要两者兼得。为此,我建议使用Bundler,而不是RVM宝石集。
  • ,您应该在Gemfile中添加任何想要使用并与应用程序集成的Gemfile(即,加载应用程序或作为应用程序的一部分加载的Gemfile)。这并不是任何不与您的application.
  • You集成的宝石的要求,在您确信您的应用程序继续可接受地运行(测试通过,新的gem做了一些有用的事情,等等)之前,不要将修改过的Gemfile或Gemfile.lock提交到版本控制。

或者你应该停止使用Bundler,因为你想要做一些事情,它是明确地设计来阻止你去做的(不推荐)。

票数 3
EN

Stack Overflow用户

发布于 2012-01-04 13:43:30

冒着听起来很傻的风险,为什么不把它添加到宝石文件中呢?如果您不想在任何地方安装它,可以将它添加到它自己的组中。

票数 1
EN

Stack Overflow用户

发布于 2012-01-04 19:33:28

一个稍微不同的方法是,如果您使用版本控制(如Git )来创建一个新分支并安装gems。如果不成功,卸载gem (我不确定这将通过对旧分支的包更新来完成)并将分支垃圾化。如果是的话,就把你的东西合并到旧的分支里去。

虽然我相信其他的答案和评论有一些非常好的观点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8727794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档