Changing command line API from 'rails blog' to 'rails new blog'.

Also removed the limitation of not being able to call your new server any of
the rails commands (generate, server, dbconsole, console etc) as there is
no longer any ambiguity here.

http://rails.lighthouseapp.com/projects/8994/tickets/4665

Signed-off-by: David Heinemeier Hansson <david@loudthinking.com>
This commit is contained in:
Mikel Lindsaar 2010-06-03 23:47:44 +10:00 committed by David Heinemeier Hansson
parent 517f709b51
commit 4774680405
4 changed files with 15 additions and 5 deletions

View File

@ -38,6 +38,10 @@ when 'dbconsole'
when 'application', 'runner'
require "rails/commands/#{command}"
when 'new'
puts "Can't initialize a new Rails application within the directory of another, please change to a non-Rails directory first.\n"
puts "Type 'rails' for help."
when '--version', '-v'
ARGV.unshift '--version'
require 'rails/commands/application'
@ -53,6 +57,8 @@ The most common rails commands are:
server Start the Rails server (short-cut alias: "s")
dbconsole Start a console for the database specified in config/database.yml
(short-cut alias: "db")
new Create a new Rails application. "rails new my_app" creates a
new application called MyApp in "./my_app"
In addition to those, there are:
application Generate the Rails application code

View File

@ -4,7 +4,12 @@ if %w(--version -v).include? ARGV.first
exit(0)
end
ARGV << "--help" if ARGV.empty?
if ARGV.first != "new" || ARGV.empty?
ARGV[0] = "--help"
else
ARGV.shift
end
require 'rubygems' if ARGV.include?("--dev")
require 'rails/generators'

View File

@ -1,9 +1,9 @@
Description:
The 'rails' command creates a new Rails application with a default
The 'rails new' command creates a new Rails application with a default
directory structure and configuration at the path you specify.
Example:
rails ~/Code/Ruby/weblog
rails new ~/Code/Ruby/weblog
This generates a skeletal Rails installation in ~/Code/Ruby/weblog.
See the README in the newly created application to get going.

View File

@ -149,8 +149,7 @@ module Rails
# can change in Ruby 1.8.7 when we FileUtils.cd.
RAILS_DEV_PATH = File.expand_path("../../../../../..", File.dirname(__FILE__))
RESERVED_NAMES = %w[generate g console c server s dbconsole db
application destroy benchmarker profiler
RESERVED_NAMES = %w[application destroy benchmarker profiler
plugin runner test]
class AppGenerator < Base