Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it possible to directly install a gem from a git repository?

Using bundler, you can do something like this in the Gemfile:

gem 'my_gem', :git => 'git@github:me/my_gem.git'

That builds the gem in that repo and installs it. Works great. Is it possible to do something similar just using the command-line gem tool? Something like this?

gem install my_gem --git="git@github:me/my_gem.git"

Obviously that command doesn't work, but is there something like it that does? I know I can clone the repo, run a gem build my_gem.gemspec and then a gem install my_gem-1.2.3.gem. But I'm wondering if there is a direct one-liner that hides these intermediate steps behind the scenes.

like image 219
Ben Lee Avatar asked Oct 19 '11 00:10

Ben Lee


People also ask

How do I install gems?

To install a gem, use gem install [gem] . Browsing installed gems is done with gem list . For more information about the gem command, see below or head to RubyGems' docs. There are other sources of libraries though.

How do I install gem bundler?

Install BundlerSelect Tools | Bundler | Install Bundler from the main menu. Press Ctrl twice and execute the gem install bundler command in the invoked popup. Open the RubyMine terminal emulator and execute the gem install bundler command.

How do I install a specific version of a gem?

Use `gem install -v` You may already be familiar with gem install , but if you add the -v flag, you can specify the version of the gem to install. Using -v you can specify an exact version or use version comparators.

How do you create a gem file?

A gemfile is automatically created when you start a new rails application. type rails new appName and then it will be generated automatically. It will also be populated with some gems.


1 Answers

Because unlike typical Git repositories, GitHub builds gems, if the project is hosted on GitHub and the gem is found in the source list then you can add GitHub to your sources list like this:

$ gem sources -a http://gems.github.com

and then later install gems as desired in a single step, like this:

$ sudo gem install username-projectname

Otherwise, there's no one-step solution, and you'll have to do something like this:

  1. download the gem zip/tar file
  2. gem build <gemname>.gemspec
  3. sudo gem install <gemname>-x.x.x.gem
like image 165
Noah Clark Avatar answered Oct 23 '22 00:10

Noah Clark