Je voudrais installer gem à partir de la dernière source GitHub.
Comment puis-je faire cela?
Si vous utilisez un bundle, vous devez ajouter quelque chose comme ceci à votre Gemfile:
gem 'redcarpet', :git => 'git://github.com/tanoku/redcarpet.git'
Et dans le cas où il y aurait un fichier .gemspec
, il devrait pouvoir récupérer et installer le gem lors de l'exécution de bundle install
.
eh bien, cela dépend du projet en question. Certains projets ont un fichier * .gemspec dans leur répertoire racine. Dans ce cas, il serait
gem build GEMNAME.gemspec
gem install gemname-version.gem
D'autres projets ont une tâche de rake, appelée "gem" ou "build" ou quelque chose du genre. Dans ce cas, vous devez invoquer "rake", mais cela dépend du projet.
Dans les deux cas, vous devez télécharger la source.
Essayez la gemme specific_install elle vous permet d'installer une gemme à partir de son référentiel github (comme 'Edge') ou d'une URL arbitraire. Très utile pour graver des pierres précieuses et les pirater sur plusieurs machines et autres.
gem install specific_install
gem specific_install -l <url to a github gem>
par exemple.
gem specific_install https://github.com/githubsvnclone/rdoc.git
Bundler vous permet d'utiliser des gems directement à partir de référentiels git. Dans votre Gemfile:
# Use the http(s), ssh, or git protocol
gem 'foo', git: 'https://github.com/dideler/foo.git'
gem 'foo', git: '[email protected]:dideler/foo.git'
gem 'foo', git: 'git://github.com/dideler/foo.git'
# Specify a tag, ref, or branch to use
gem 'foo', git: '[email protected]:dideler/foo.git', tag: 'v2.1.0'
gem 'foo', git: '[email protected]:dideler/foo.git', ref: '4aded'
gem 'foo', git: '[email protected]:dideler/foo.git', branch: 'development'
# Shorthand for public repos on GitHub (supports all the :git options)
gem 'foo', github: 'dideler/foo'
Pour plus d'informations, voir https://bundler.io/v2.0/guides/git.html
OBSOLETE (voir commentaires)
Si le projet provient de github et figure dans la liste sur http://gems.github.com/list.html , vous pouvez simplement ajouter le référentiel github aux sources de gems pour l'installer:
$ gem sources -a http://gems.github.com
$ Sudo gem install username-projectname
Si vous obtenez vos gemmes d'un référentiel GitHub public, vous pouvez utiliser le raccourci
gem 'nokogiri', github: 'tenderlove/nokogiri'
Aussi, vous pouvez faire gem install username-projectname -s http://gems.github.com
Si vous installez bundler comme suggéré par gryzzly et que la gem crée un fichier binaire, assurez-vous de l'exécuter avec bundle exec mygembinary
car la gem est stockée dans un répertoire bundler qui n'est pas visible sur le chemin d'accès normal à la gem.
Dans votre Gemfile, ajoutez ce qui suit:
gem 'example', :git => 'git://github.com/example.git'
Vous pouvez également ajouter des options de référence, de branche et de tag,
Par exemple, si vous souhaitez télécharger depuis une branche particulière:
gem 'example', :git => "git://github.com/example.git", :branch => "my-branch"
Puis lancez:
bundle install
Sur une nouvelle machine Linux, vous devez également installer git
. Bundle l'utilise en coulisse.