问题标签 [gemfile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
107004 浏览

ruby - Gemfile.lock 是否应该包含在 .gitignore 中?

我对捆绑器及其生成的文件有点陌生。我有一份来自 GitHub 的 git repo 的副本,该副本由许多人贡献,所以我惊讶地发现 bundler 创建了一个在 repo 中不存在且不在.gitignore列表中的文件。

由于我已经分叉了它,我知道将它添加到 repo 不会破坏主 repo 的任何内容,但是如果我执行 pull request,它会导致问题吗?

应该Gemfile.lock包含在存储库中吗?

0 投票
2 回答
31652 浏览

ruby - 在 Gemfile 中指定 ruby​​gem 时 ~> 和 >= 有什么区别?

我经常在 Gemfile 中看到以下符号(~>)。

我知道符号 (>=) 只是大于或等于,但是 (~>) 符号是什么意思?它们是否相同或有任何显着差异?

0 投票
6 回答
80343 浏览

ruby - Ruby:Gemfile 中的“require:false”是什么意思?

做这个:

意味着需要安装gem,还是不需要安装gem?

0 投票
2 回答
2289 浏览

ruby-on-rails - 使用捆绑器进行自动测试的平台特定 gem

在我正在处理的 rails 项目中,我使用此 Gemfile(部分)插入了对 rspec、cucumber 和 autotest 的支持

但是,为了使用自动测试运行测试,我需要执行,bundle exec autotest否则它会失败并显示此消息

现在我正在 Mac 上开发,我想启用 autotest-growl 和 autotest-fsevents gem,但是如果我在我的~/.autotest

然后我需要在 Gemfile 中插入相应的 gem,一切正常,但它破坏了我的 CI 服务器(在 Linux 上)上的构建

如何在不为本地和 CI 环境维护不同的 Gemfile 的情况下解决这个问题?

编辑:

目前我用 Gemfile 中的这些行解决了

它在本地和 CI 服务器上都可以工作,我不知道它是否会弄乱一些东西,目前它似乎可以完美地工作。

任何更清洁的方法仍然受到欢迎。

编辑2:

我切换到组解决方案。虽然之前的monkeypatch 在开发和持续集成中运行良好,但如果您使用capistrano bundler 任务进行部署或使用bundle install --deployment选项(建议在生产中使用) ,它会在生产中出现错误

使用该if RUBY_PLATFORM.downcase.include?("darwin")行时,您将在部署时收到此错误。

所以我对这个问题的最终解决方案是在给定的组中包含特定于平台的 gem,比如 osx,然后在生产和 CI 服务器上使用 bundle 排除它。

如果您使用 capistrano 进行部署,请将其放入您的config.rb

0 投票
0 回答
3746 浏览

ruby - 如何为特定操作系统创建 gemfile 组?

仅当开发人员在某个操作系统上时,我才需要在开发中安装一些 gem。在我的特殊情况下,我想为 Linux 创建一个组。

我怎样才能为此创建一个组?

0 投票
1 回答
724 浏览

ruby - 没有要加载的文件——merb 中的规范

我在 merb 中创建了一个应用程序。我的 Gemfile 有

如果我运行rake -Tor rake routes,我的 rake 任务会因上述错误而中止。

如果 Gemfile 中没有提到 gem,那么错误是

请提出解决方案。

0 投票
3 回答
63406 浏览

ruby-on-rails - Ruby on Rails 中的 Gemfile 和 Gemfile.lock 有什么区别

我是 Ruby on Rails 的初学者,我正在使用 Rails 3.0.9。

GemfileRails和Rails有什么区别Gemfile.lock

0 投票
1 回答
466 浏览

heroku - Gemfile.lock 未签入 - Heroku × 45807

得到与(7)相同的问题,并尝试了所有可能的答案,但仍然没有取得任何进展。我希望你能有所帮助(请记住我是新手)。这里是问题的描述@hand: Counting objects: 7, done。Delta 压缩最多使用 4 个线程。压缩对象:100% (4/4),完成。写入对象:100% (4/4),403 字节,完成。总计 4(增量 3),重复使用 0(增量 0)

谢谢

0 投票
2 回答
1897 浏览

rubygems - 使用 Bundler 打包本地红宝石宝石?

我有一个正在处理的项目,它使用了我们在内部创建的 gem。它不托管在 ruby​​gems.org 或 github 上。但是我们确实在我们的存储库和本地机器上的路径中拥有它。

在我们的 Gemfile 中,我们有类似这样的内容:

我们正在尝试打包我们所有的 gem,以便我们可以使用 warbler gem 创建一个 .war 文件,以便使用 jRuby 进行部署。

我们希望能够运行“bundle install”或“bundle install --local”之类的东西,以确保安装了所有的 gem。然后让 bundler 获取我们 Gemfile 中指定的所有依赖项,使用“bundle package”命令将它们放入 vendor/bundle 中。

但基于此链接(http://gembundler.com/man/bundle-package.1.html),看起来捆绑器无法打包使用 :path 或 :git 作为源指定的 gem。

有没有人找到解决这个问题的方法?

您如何“捆绑”本地的、不属于 git 存储库或 ruby​​gems.org 的 gem?

谢谢。

0 投票
2 回答
1172 浏览

ruby-on-rails - bundler 可以将 gem 安装限制在某个操作系统上吗?

我正在开发 Rails 3.1,并且正在使用默认的 uglifier 资产 gem。该 gem 依赖于 execjs,它需要 JavaScript 运行时。我在 Mac OSX 上开发,所以我从来没有遇到过麻烦。另一位开发人员使用 Linux,默认情况下它没有 JavaScript 运行时。因此,使用嵌入在 Ruby 中的 JavaScript 运行时 therubyracer 工作得很好,但我希望 Bundler 仅在系统是 Linux 时安装它。我可以在 Gemfile 中指定它以便它只安装在 Linux 而不是 Mac 中吗?