2016-01-25 2 views
2

Я хочу, чтобы мой список TODO, который я получаю как вывод «грабли», находится под контролем источника (Git). Есть ли способ, которым я могу настроить «грабли», чтобы вытолкнуть текстовый файл, который может находиться под контролем источника?Добавить список TODO (rake notes) на исходный элемент управления

ответ

1

Непонятное понимание направления вашего вопроса, поэтому я просто начну с самого начала. :)

Создайте файл грабли :)

Наиболее распространенным находится под Rails.root/Lib, но предпочтительнее (в зависимости от Elitests или пуристов), чтобы поставить его под lib/tasks/output_notes.rake (да, .rake, нет. rb)

Рейк-скрипты имеют пространства имен. «db» - это пространство имен для запуска «rake db: migrate», например. Здесь вы можете увидеть несколько примеров: https://github.com/rails/rails/tree/master/railties/lib/rails/tasks

Ваш скрипт может выглядеть примерно так.

namespace :vasa do 
    desc "Output notes" 
    task :output_notes do 
    output_file_name = "#{DateTime.now.to_i}_notes.txt" 
    File.open(output_file_name, 'w') { |file| file.write(Note.dump_all) } 
    end 
end 

Затем вы можете запустить rake vasa:output_notes. Хотите добавить файл в свое репо автоматически?

# after File.open ... 
` 
git add #{output_file_name} 
git commit -m "added notes" 
` 

Обратные сигналы запускают его как системную команду.

+0

Как получить вывод «rake notes: todo» в файле output_file? –

+0

Вы имеете в виду, если это сработало или нет? Вы можете сделать «File.exists?» (Output_file_name) 'или что-то вдоль этих строк. Вы также можете установить переменную в 'File.open' –

Смежные вопросы