rbenvでRuby環境下に置かれたgemを全削除する
そんな夢のようなスクリプトを書いてくれている人がいた。最高。
#!/usr/bin/env bash uninstall() { list=`gem list --no-versions` for gem in $list; do gem uninstall $gem -aIx done gem list gem install bundler } #rbenv versions --bare RBENVPATH=`rbenv root` echo $RBENVPATH RUBIES=`ls $RBENVPATH/versions` for ruby in $RUBIES; do echo '---------------------------------------' echo $ruby rbenv local $ruby uninstall done
ざくざく消してくれるのでテンションあがる。Rails初心者の頃(まだ初心者だけど)に雑にbundle installした負債をこれで全部削除出来る。とても良い。
railsをローカルインストールするという考え方はこの辺参照した。
めんどくさいのでコマンド化した。
#!/bin/bash # 第1引数にプロジェクト名を受け取る cat << EOS > Gemfile source "http://rubygems.org" gem "rails", "4.0.0" EOS bundle install --path vendor/bundle bundle exec rails new $1 --skip-bundle rm -f Gemfile rm -f Gemfile.lock rm -rf .bundle rm -rf vendor/bundle cd $1 bundle install --path vendor/bundle echo '/vendor/bundle' >> .gitignore