https://github.com/intridea/omniauth.git (at master) is not checked out. Please run `bundle install` (Bundler::GitError)
那我该怎么办?捆绑安装适用于开发,但是当我推送并部署到生产服务器时。即使在生产服务器上运行捆绑安装后,我也会收到此错误。
您可能正在运行 Passenger。这是一些解决方案的问题 - http://code.google.com/p/phusion-passenger/issues/detail?id=505
尝试跑步
bundle install --deployment
此错误可能与 spring gem 有关。再生弹簧 binstubs 对我有用。
bundle exec spring binstub --all
对于那些遇到“bundle & git repo”问题的人。
bundle pack
bundle install --path vendor/cache
对我来说,只需将其添加到 gemfile 中即可:
source 'http://gems.github.com'
当您的计算机从未重新启动时,Spring 可能是问题所在。 Spring 运行了 350 小时并导致缓存过时的 TEST 环境。我在 Rubymine 的 Cucumber 测试环境中遇到了这个问题。奇怪的是,从(mac)命令提示符没有问题。
spring status
spring stop
瞧!一切又恢复正常了。
升级到 ruby 2.7.0 后遇到这个问题
看起来可能已经发生了变化,不再使用以商业公司为中心的
:github =>
,而是以实际的软件平台为中心:git =>
。也许更容易维护代码逻辑。
更改以下内容:
gem 'devise', :github => 'plataformatec/devise'
以下内容:
gem 'devise', :git => 'git://github.com/plataformatec/devise'
另一种方法是,您仍然可以在 Gemfile 顶部引用 :github 作为 git_source,然后像平常一样引用 Gems:
source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
...
gem 'devise'
如果您运行
bundle install
,然后尝试运行任何内容,您会看到“... github.com ... 尚未签出。首先运行 bundle install
。”
- 这意味着您需要在命令之前使用 bundle exec
,例如:
bundle exec rails s
对于 2021 年这里的任何人来说,接受的答案已经过时,因为
--deployment
标志已弃用。
用这个代替:
bundle config set --local deployment 'true'
在项目目录中本地安装 gem 为我修复它。
$ bundle install --path vendor/bundle
这个解决方案
$ bundle install --path vendor/bundle
解决了我通过 foreman 运行多个 Rails 应用程序的问题。
注意:如果您使用
rbenv rehash
,请不要忘记执行rbenv
。
/vendor/bundle
中添加 .gitignore
。
我的问题是我无法访问 github
尝试
ssh -vT [email protected]
看看你是否得到
[电子邮件受保护]:权限被拒绝(公钥)。
然后参见https://help.github.com/articles/error-permission-denied-publickey/
另一个解决方案,当我在 Docker 中从 Github 存储库安装私有 gem 时遇到同样的问题时对我有所帮助(我的 gems 在卷 /gems 中):
# Add known host
RUN mkdir -p -m 0600 ~/.ssh && ssh-keyscan github.com >> ~/.ssh/known_hosts
RUN bundle config set path /gems # this fixes issue with private repos DON'T USE ENV BUNDLE_PATH /gems
RUN --mount=type=ssh bundle install
要转发 SSH,请使用以下命令进行构建:
docker build --ssh default .
这是一个权限错误。以下有效
环境:带有 Apache 的 RVM
RVM 用户:组:rvm:rvm
Apache 用户:组:apache:apache
您需要将apache用户添加到RVM组
usermod -a -G rvm apache
最终永远帮助我的是什么:
按照 Galen 建议重新安装所有内容(所有步骤来自 https://github.com/carlhuda/bundler/blob/master/ISSUES.md)
使用
bundle
代替 rvmsudo bundle
按如下方式更新您的 Gemfile;
gem 'activeadmin', github: 'activeadmin/active_admin', branch: '0-6-stable'
然后,
bundle install
如果仍然出现错误(因为你已经尝试过'bundle install --deployment',然后尝试运行)
bundle install --no-deployment
重新启动 bash 会话对我有帮助
最近我在 Circle CI 上收到错误消息:
#!/bin/bash -eo pipefail
bundle exec rails db:setup
https://github.com/randym/axlsx.git (at c8ac844@c8ac844) is not yet checked out. Run `bundle install` first.
Exited with code exit status 1
CircleCI received exit code 1
当gem依赖项无法解析时会发生此错误。 所以我在 Gemfile 中切换回预发布版本来修复它
-gem 'axlsx', github: 'randym/axlsx', ref: 'c8ac844572b25fda358cc01d2104720c4c42f450'
+gem 'axlsx', '3.0.0.pre'
并运行 update 来更新 gem 依赖项
bundle update axlsx