Ruby RubyGems
RubyGems 是Ruby 的一個包管理器,它提供一個分發Ruby 程序和庫的標準格式,還提供一個管理程序包安裝的工具。
RubyGems 旨在方便地管理gem 安裝的工具,以及用於分發gem 的服務器。 這類似於Ubuntu 下的apt-get, Centos 的yum,Python 的pip。
RubyGems大約創建於2003年11月,從Ruby 1.9版起成為Ruby標準庫的一部分。
如果你的Ruby 低於1.9 版本,也可以通過手動安裝:
- 首先下載安裝包: https://rubygems.org/pages/download 。
- 解壓並進入目錄,執行命令: ruby setup.rb
更新RubyGems 命令:
$ gem update --system # 需要管理员或root用户
Gem
Gem 是Ruby 模塊(叫做Gems) 的包管理器。 其包含包信息,以及用於安裝的文件。
Gem通常是依照".gemspec"文件構建的,包含了有關Gem信息的YAML文件。 Ruby代碼也可以直接建立Gem,這種情況下通常利用Rake來進行。
gem命令
gem命令用於構建、上傳、下載以及安裝Gem包。
gem用法
RubyGems 在功能上與apt-get、portage、yum 和npm 非常相似。
安裝:
gem install mygem
卸載:
gem uninstall mygem
列出已安裝的gem:
gem list --local
列出可用的gem,例如:
gem list --remote
為所有的gems創建RDoc文檔:
gem rdoc --all
下載一個gem,但不安裝:
gem fetch mygem
從可用的gem中搜索,例如:
gem search STRING --remote
gem 包的構建
gem命令也被用來構建和維護.gemspec和.gem文件。
利用.gemspec文件構建.gem:
gem build mygem.gemspec
修改國內源
由於國內網絡原因(你懂的),導致rubygems.org 存放在Amazon S3 上面的資源文件間歇性連接失敗。
所以你會與遇到gem install rack 或bundle install 的時候半天沒有響應,具體可以用gem install rails -V 來查看執行過程。
因此我們可以將它修改為淘寶下載源: http://ruby.taobao.org/首先,查看當前源:
$ gem sources -l *** CURRENT SOURCES *** https://rubygems.org/
接著,移除https://rubygems.org/,並添加淘寶下載源http://ruby.taobao.org/。
$ gem sources --remove https://rubygems.org/ $ gem sources -a https://ruby.taobao.org/ $ gem sources -l *** CURRENT SOURCES *** https://ruby.taobao.org # 请确保只有 ruby.taobao.org $ gem install rails
如果你使用Gemfile 和Bundle (例如:Rails 項目)
你可以用bundle的gem源代碼鏡像命令。
$ bundle config mirror.https://rubygems.org https://ruby.taobao.org
這樣你不用改你的Gemfile 的source。
source 'https://rubygems.org/' gem 'rails', '4.1.0' ...