Принудительное копирование с помощью действия Thor
Я использую встроенное действие Thor "copy_file", чтобы скопировать файл из моего источника шаблона, перезаписав существующий файл.
Я всегда хочу переписать, и не хочу подтверждать это в интерактивном режиме.
Документация не предполагает, что в хэше конфигурации есть опция force для этого действия, но http://textmate.rubyforge.org/thor/Thor/Actions.html действительно указывает, что config[: поведение] может быть установлено как принудительное, но я не вижу, как это сделать.
Если у кого-нибудь есть пример, которым они могут поделиться, я был бы очень благодарен.
Благодарю.
1 ответ
Посмотрите на источник copy_file
действие на https://github.com/erikhuda/thor/blob/master/lib/thor/actions/file_manipulation.rb оно использует create_file
и передает config Hash к нему. Хорошо, давайте посмотрим спецификации для файла create_file https://github.com/erikhuda/thor/blob/master/spec/actions/create_file_spec.rb. Найдите в файле "force", действие может быть вызвано с помощью:
create_file("doc/config.rb", :force => true)
Попробуйте это с вашим copy_file
действие, добавить :force => true
в конце он обрабатывается как хеш конфигурации, передается в create_file и должен работать.