38 lines
727 B
Ruby
38 lines
727 B
Ruby
require_relative './start'
|
|
require_relative './end'
|
|
require_relative './rebase'
|
|
require_relative './merge_to'
|
|
require_relative './branch'
|
|
|
|
module Feature
|
|
|
|
class Commander
|
|
attr_reader :argv
|
|
|
|
def initialize (argv)
|
|
@argv = argv
|
|
end
|
|
|
|
def valid?
|
|
true
|
|
end
|
|
|
|
def help
|
|
exit
|
|
end
|
|
|
|
def execute
|
|
command = case argv[0]
|
|
when "start" then Feature::Start.new(argv)
|
|
when "end" then Feature::End.new(argv)
|
|
when "rebase" then Feature::Rebase.new(argv)
|
|
when "merge" then Feature::MergeTo.new(argv)
|
|
else Feature::Branch.new(argv)
|
|
end
|
|
command.execute
|
|
end
|
|
|
|
end
|
|
|
|
end
|