Я хочу автоматизировать такие вещи, как:
Инструменты, насколько я понимаю а ведь это Рейк и Тор, какой из них мне следует использовать?
Рейк мне кажется более фактическим и популярным. Я слышал, как люди рекомендуют Тора.
Как они соотносятся друг с другом в кратком изложении?
Грабли и Тор служат разным целям.
Rake - это общий инструмент-скрипт сборки, зависящий от проекта.Другими словами, вы помещаете свой rakefile в папку проекта и в систему управления версиями вашего проекта, и вы можете создавать, строить и выполнять другие задачи автоматизации, специфичные для вашего проекта, в этом rakefile. Rake требует для запуска rakefile.
Thor - это универсальный инструмент для создания сценариев командной строки, который позволяет очень легко повторно использовать сценарии во многих проектах, а также выполнять настройку проекта и т. Д., Как вы предлагаете. Thor позволяет вам «установить» исполняемый скрипт, который вы можете вызывать из любого места в вашей системе, аналогично вызову « ruby
», « gem
» или « rake
] "командные строки. Однако скрипты Thor больше подходят для универсальной автоматизации между приложениями, потому что скрипт Thor не полагается на файл, находящийся в папке для конкретного проекта. Сценарий Thor - это весь сценарий, упакованный и установленный для повторного использования в любом месте.
Исходя из ваших заявленных потребностей, вам лучше использовать Thor, потому что вы сможете установить свой скрипт в одном месте, и он будет работать где угодно в вашей системе. Вы не будете привязаны к тому, где находится файл Rake или что-то в этом роде.
Между прочим, Rails 3 использует Thor практически для всего, что не относится к конкретному проекту. У вас все еще есть файл Rake, и вы все еще запускаете такие вещи, как « rake db: migrate
» или « rake test: units
». Thor используется для таких вещей, как « rails new ...
», « rails server
» и « rails generate ...
» Использование Thor AND Rake in Rails 3 - прекрасная иллюстрация того, где каждый из этих инструментов лучше всего подходит.