gpt4 book ai didi

ruby - 在 Gemfile 中将 git-repo 传递给 gem 时,需要 gem 的问题

转载 作者:数据小太阳 更新时间:2023-10-29 07:43:11 24 4
gpt4 key购买 nike

我过去没有这样做过,所以我可能在这里遗漏了一些东西。

我在本地更改了“ruby-git”的 Gem 文件,它运行良好。我在我的 Github 存储库中 fork 了一个 gem 并对其进行了相同的更改。

在构建 Sinatra 应用程序以将其推送到 Heroku 时,我更改了 Gemfile 如下:

gem 'git', :git => "git://github.com/silverSpoon/ruby-git.git"`  

当我运行 bundle install 时,我得到了

Fetching gem metadata from https://rubygems.org/.........
Resolving dependencies...
Using rugged 0.21.0
Using sinatra 1.4.5
Using git 1.2.8 from git://github.com/silverSpoon/ruby-git.git (at master)
Your bundle is complete!
  • 但是,当我说 ⇒ gem list git 时,它不会显示已安装的 gem。
  • 当我运行时,⇒ bundle show git,它显示了安装 gem repo 的路径 -
    /Users/jatinganhotra/.rvm/gems/ruby-2.1.3@527website/bundler/gems/ruby-git-c7fb35af1a99
  • 当我运行我的应用程序或运行 irb 并执行 2.1.3 :001 > require 'git'
    它收到以下错误 -
    LoadError: 无法加载这样的文件 -- git

我是不是漏掉了什么傻事?

最佳答案

Gems installed by Bundler through git are not handled the same way as normal gems :

Because Rubygems lacks the ability to handle gems from git, any gems installed from a git repository will not show up in gem list. They will, however, be available after running Bundler.setup.

为了使用 gem,您需要通过 Bundler 来完成。在启动 IRB 或您的应用程序时使用 bundle exec,或者使用 Bundler.setup从您的代码中。

$ bundle exec irb
> require 'git' # should work ok

或:

$ irb
> require 'bundler/setup'
> require 'git' # should also work

关于ruby - 在 Gemfile 中将 git-repo 传递给 gem 时,需要 gem 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26950906/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com