1.2.2 Ruby, RubyGems, Rails, и Git
Теперь пора установить Ruby и Rails. Классический способ установки - из исходников со страницы загрузки Ruby on Rails. Я предполагаю, что вы можете перейти туда сейчас; некоторые части этой книги могут быть прочитаны с пользой и в офлайне, но только не эта часть. Я лишь прокомментирую некоторые шаги.
Rails Installer (Windows)
Установка Rails на Windows, применялась раньше как орудие пыток, но благодаря усилиям хороших людей в Engine Yard – особенно Dr. Nic Williams и Wayne E. Seguin – установка Rails и связанного програмного обеспечения на Windows, теперь невероятно легка. Если Вы используете Windows, перейдите на Rails Installer (http://railsinstaller.org/) и загрузите исполняемый файл Rails Installer. Дважды кликните исполняемый файл и следуйте инструкциям, чтобы установить Git (таким образом, можете пропустить Раздел 1.2.2.2), Ruby (пропустите Раздел 1.2.2.3), RubyGems (пропустите Раздел 1.2.2.4), и, непосредственно, Rails (пропустите Раздел 1.2.2.5). Как только установка закончится, можете перейти к созданию первого приложения в Разделе 1.2.3.
Установка Git
Большая часть экосистемы Rails так или иначе зависит от системы управления версиями называемой Git (освещаемой более подробно в Раздел 1.3). Поскольку его использование является повсеместным, следует установить Git даже на этой ранней стадии; я предлагаю следовать инструкциям по установке для Вашей платформы в Installing Git разделе Pro Git.
Установка Ruby
Следующий шаг это установка Ruby. Возможно, он уже есть в Вашей системе; попытайтесь выполнить
$ ruby -v ruby 1.9.2
чтобы увидеть номер версии. Rails 3 требует Ruby 1.8.7 или выше и работает лучше всего с Ruby 1.9.2. Это учебное руководство предполагает, что Вы используете последнюю рабочюю версию Ruby 1.9.2, известную как Ruby 1.9.2-head, но Ruby 1.8.7 также должен работать.
Ветка Ruby 1.9 находится в интенсивной разработке, поэтому, к сожалению, установка последней версии может оказаться непростой задачей. Вам придётся полагаться на интернет чтобы найти самые современные инструкции. Ниже приводится ряд шагов, после которых я привёл всё в рабочее состояние на моей системе (Macintosh OS X), но вам, возможно, придётся повозиться.
Как часть установки Ruby, если Вы используете OS X или Linux, я строго рекомендую устанавливать Ruby с использованием Ruby Version Manager (RVM), который позволит Вам устанавливать и управлять различными версиями Ruby на одной машине. (Проект Pik совершает подобный подвиг для Windows.) Это особенно важно, если Вы хотите запускать Rails 3 и Rails 2.3 на одной машине. Если Вы хотите пойти этим маршрутом, я предлагаю использовать RVM, для установки двух Ruby/Rails комбинаций: Ruby 1.8.7/Rails 2.3.10 и Ruby 1.9.2/Rails 3.0.7. Если Вы столкнетесь с какими-либо проблемами с RVM, вы часто можете найти его творца, Wayne E. Seguin, на канале IRC RVM (#rvm на freenode.net).8
После установки RVM Вы можете установить Руби следующим образом:9
$ rvm get head $ rvm reload $ rvm install 1.8.7 $ rvm install 1.9.2 <подождите немного>
Здесь первые две команды обновляют и перезагружают сам RVM, что является полезной практикой так как RVM часто обновляется. Финальные две команды выполняют установку Ruby; в зависимости от Вашей системы они могут потребовать времени для загрузки и компиляции, так что не волнуйтесь, если покажется, что это займет целую вечность. (Также предостерегу, что много маленьких вещей может пойти не так. Например, на моей системе самая последняя версия Ruby 1.8.7 не захотела компилироваться; вместо этого, после большого поиска и рукоприкладства, я обнаружил, что нуждался в "patchlevel" номер 302:
$ rvm install 1.8.7-p302
Когда вещи вроде этой происходят с Вами, это всегда расстраивает, но теперь Вы, по крайней мере, знаете, что это происходит со всеми …)
Программы Ruby обычно распространяются посредством гемов, которые являются автономными пакетами Ruby кода. Так как gemы с различными номерами версий иногда конфликтуют, часто удобно создать отдельные gemsets, которые являются автономными пакетами гемов. В частности Rails распространяется как гем, и есть конфликты между Rails 2 и Rails 3, поэтому, если Вы хотите использовать различные версии Rails на одной системе, Вы должны создать отдельный gemset для каждого:
$ rvm --create 1.8.7-p302@rails2tutorial $ rvm --create use 1.9.2@rails3tutorial
Здесь первая команда создает gemset rails2tutorial
связанный с Ruby 1.8.7-p302 , в то время как вторая команда создает gemset rails3tutorial
связанный с Ruby 1.9.2 и одновременно запускает его (посредством команды use). RVM поддерживает много различных команд для того, чтобы манипулировать gemsets; см. документацию в http://rvm.beginrescueend.com/gemsets/.
В этом учебном руководстве мы хотим, чтобы наша система использовала Ruby 1.9.2 и Rails 3.0 по умолчанию, чего мы можем добиться следующим образом:
$ rvm --default use 1.9.2@rails3tutorial
Что одновременно устанавливает использование Ruby 1.9.2 и gemset rails3tutorial
к нему по умолчанию.
Кстати, если Вы когда-либо застрянете с RVM, выполнение этих команд может помочь Вам:
$ rvm --help $ rvm gemset --help
Установка RubyGems
RubyGems это диспетчер пакетов для проектов Ruby, и есть тонны замечательных библиотек (включая Rails) доступных как пакеты Ruby, или gem. Установка RubyGems должна быть легкой, раз уж Вы установили Ruby. Фактически, если Вы установили RVM, у Вас уже есть RubyGems, так как RVM включает его автоматически:
$ which gem /Users/mhartl/.rvm/rubies/ruby-head/bin/gem
Если у Вас еще нет его, следует загрузить RubyGems, извлечь его, и затем перейти в rubygems
каталог и выполнить программу установки:
$ [sudo] ruby setup.rb
Если Вы уже устанавливали RubyGems, Вы можете захотеть обновить свою систему до версии, используемой в этом учебнике:
$ [sudo] gem update --system 1.6.2
Наконец, если Вы используете Linux Ubuntu, Вы можете захотеть посмотреть the Ubuntu/Rails 3.0 сообщение в блоге Toran Billups для изучения полных инструкций по установке.
Установка Rails
Поскольку Вы уже установили RubyGems, установка Rails 3.0 должна быть легкой:
$ [sudo] gem install rails --version 3.0.7
Чтобы проверить, что это работает, выполните следующую команду:
$ rails -v Rails 3.0.7