Команда RoR 'new' висит

Я только начинаю рубин на рельсах. В терминале я ввел "rails new TestApp", и это то, что происходит на терминале:

  create  
  create  README
  create  Rakefile
  create  config.ru
  create  .gitignore
  create  Gemfile
  create  app
  create  app/assets/images/rails.png
  create  app/assets/javascripts/application.js
  create  app/assets/stylesheets/application.css
  create  app/controllers/application_controller.rb
  create  app/helpers/application_helper.rb
  create  app/mailers
  create  app/models
  create  app/views/layouts/application.html.erb
  create  app/mailers/.gitkeep
  create  app/models/.gitkeep
  create  config
  create  config/routes.rb
  create  config/application.rb
  create  config/environment.rb
  create  config/environments
  create  config/environments/development.rb
  create  config/environments/production.rb
  create  config/environments/test.rb
  create  config/initializers
  create  config/initializers/backtrace_silencers.rb
  create  config/initializers/inflections.rb
  create  config/initializers/mime_types.rb
  create  config/initializers/secret_token.rb
  create  config/initializers/session_store.rb
  create  config/initializers/wrap_parameters.rb
  create  config/locales
  create  config/locales/en.yml
  create  config/boot.rb
  create  config/database.yml
  create  db
  create  db/seeds.rb
  create  doc
  create  doc/README_FOR_APP
  create  lib
  create  lib/tasks
  create  lib/tasks/.gitkeep
  create  lib/assets
  create  lib/assets/.gitkeep
  create  log
  create  log/.gitkeep
  create  public
  create  public/404.html
  create  public/422.html
  create  public/500.html
  create  public/favicon.ico
  create  public/index.html
  create  public/robots.txt
  create  script
  create  script/rails
  create  test/fixtures
  create  test/fixtures/.gitkeep
  create  test/functional
  create  test/functional/.gitkeep
  create  test/integration
  create  test/integration/.gitkeep
  create  test/unit
  create  test/unit/.gitkeep
  create  test/performance/browsing_test.rb
  create  test/test_helper.rb
  create  tmp/cache
  create  tmp/cache/assets
  create  vendor/assets/stylesheets
  create  vendor/assets/stylesheets/.gitkeep
  create  vendor/plugins
  create  vendor/plugins/.gitkeep
     run  bundle install

И он там висит. Должен ли я просто выйти из него и продолжить приложение? Почему он не возвращает мне контроль над терминалом? Спасибо.

ОБНОВЛЕНИЕ: он попросил меня ввести мой пароль и установить некоторые драгоценные камни. Но он делает это каждый раз, когда я создаю новый проект рельсов. это нормально? Спасибо.

Ответ 1

Система "висит", потому что она устанавливает все драгоценные камни через bundle install в Gemfile, который генерирует rails new <project>. Это предполагаемое поведение. Он запрашивает ваш пароль, чтобы он мог установить некоторые файлы, для которых ему понадобится sudo доступ к записи (скорее всего, размещение исполняемого файла rail в вашем пути).

Вы можете пропустить шаг bundle install при вызове rails new, передав ему аргумент --skip-bundle. Вам все равно придется вызывать bundle install, прежде чем вы сможете запустить приложение, но по крайней мере вы можете контролировать, когда это произойдет.

Полезно использовать --skip-bundle, когда вы знаете, что собираетесь изменить Gemfile, так что вам не нужно ждать, пока связующий узел установит все драгоценные камни, прежде чем запускать его за несколько минут.

Ответ 2

Это довольно устаревший вопрос, но для того, что он стоит, кажется, теперь исправлено. Если вы обновляете рельсы (gem update rails), это должно устранить проблему.

Ответ 3

Поскольку большинство комментариев упомянули о своем хорошем, чтобы иметь rvm для управления вашими драгоценными камнями. Это зависание, скорее всего, связано с проблемой разрешения,

Вы можете попробовать установить драгоценный камень обычным способом и посмотреть, работает ли он

gem install <gem name>

а следующая - базовая запись об использовании rvm с наборами gem (которые я написал некоторое время назад) (http://keepthingssimple.tumblr.com/post/11274588229/using-rvm-to-keep-things-simple )