Skip to content

Commit

Permalink
task to make diff
Browse files Browse the repository at this point in the history
  • Loading branch information
mikdiet committed Mar 15, 2015
1 parent 44d59ba commit 1b7fb21
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 5 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Expand Up @@ -14,7 +14,7 @@ tmp
webrat.log
.sass-cache/
tmp/

diff.diff
config/settings.local.yml
config/settings/*.local.yml
config/environments/*.local.yml
Expand Down
9 changes: 5 additions & 4 deletions README.md
Expand Up @@ -54,16 +54,17 @@

Алгоритм работы:

* Клонируете репозиторий docrails, если уже есть репозиторий, обновляете его до актуального состояния (fetch/merge)
* Делаете форк. [Инструкция по форкам](http://help.github.com/fork-a-repo/)
* Выбираете руководство (степень актуальности всех руководств можно оценить с помощью `rake docrails:status`)
* Открываете [issue в rusrails](https://github.com/morsbox/rusrails/issues), с пометкой о руководстве которое хотите обновить/перевести(чтобы этим руководством никто параллельно не занимался)
* Берете diff по отдельному файлу `git diff fa159d317611d1fe5b48 -- guides/source/getting_started.md >> getting.diff`. Ревизия - из файла `source/index.yml`
* Смотрите номер последней ревизии по файлу `git log -- guides/source/getting_started.md`, изменяете эти данные в `source/index.yml`
* Смотрите, что изменилось - `rake 'docrails:diff[file_name]' > diff.diff` - в файле `diff.diff`
* В том же файле смотрите информацию по последней ревизии и ее дате, изменяете эти данные в `source/index.yml`
* Вносите в нужных местах исправления по диффу
* Отправляете пул-реквест

Хотите помочь с развитием сайта?
--------------------------------

Есть много всяких идей, до которых руки не доходят, например, редизайн, социализация, расширение на другие руководства, связанные с rails, и т.д.
Есть много всяких идей, до которых руки не доходят, например, правки дизайна, социализация, расширение на другие руководства, связанные с Rails, версии в PDF/kindle и т.д.

Предлагайте свои идеи, которые в состоянии реализовать. [@RusRails](http://twitter.com/rusrails)
18 changes: 18 additions & 0 deletions lib/tasks/docrails.rake
Expand Up @@ -32,6 +32,24 @@ namespace :docrails do
end
end

desc "make diff (use rake 'docrails:diff[file_name]' > diff.diff)"

task :diff, [:file_name] => :environment do |_, args|
page = config['pages'].detect { |page| page['file'] == args.file_name }
if page
file = "guides/source/#{page['file']}"
log = docrails.log(1).path(file).first
puts "-" * 80
puts " revision: #{log.objectish}"
puts " date: #{log.author_date.strftime('%d/%m/%Y')}"
puts "-" * 80
puts docrails.diff(page['revision']).path(file).first.patch
else
puts "Page #{args.file_name} not found!"
end

end

def docrails
@docrails ||= if Dir.exists?(docrails_path)
Git.open(docrails_path).tap(&:pull)
Expand Down

0 comments on commit 1b7fb21

Please sign in to comment.