2009-04-07 34 views
60

In termini semplici, cosa fa Rake? Che scopi ha? Capisco che sia uno strumento di costruzione ma sto guardando un po 'più in dettaglio. (. Per un sempliciotto)Che cosa è esattamente Rake?

+2

[Questo video] (https://www.youtube.com/watch?v=AFPWDzHWjEY) è davvero eccellente per la comprensione rake al livello più elementare. – filmnut

risposta

42

Prova l'articolo di Martin Fowler su Rake per ulteriori informazioni:

http://martinfowler.com/articles/rake.html

La sua pre-ambio è:

Rake è un linguaggio di generazione, simile a scopo di fare e ant. Come make e ant è una lingua specifica di dominio, a differenza di quei due è un DSL interno programmato in linguaggio Ruby. In questo articolo ho introdurre rastrello e descrivere alcune cose interessanti che è uscito dalla mia uso di rake per costruire questo sito web: modelli di dipendenza, compiti sintetizzati, di generazione personalizzata routine e il debug build script.

Ci sono più informazioni disponibili su o collegate dalla home page del progetto, nonché:

http://rake.rubyforge.org/

+0

Martin Fowler per la vittoria! –

6

Il rastrello consente di eseguire codice Ruby tramite una bella API spazio dei nomi. Un esempio è rake db: migrate. È possibile eseguire le attività automaticamente prima e dopo altre attività. Questo è tutto.

56

Queste risposte presumono che tu sappia cosa sia un DSL o che abbia familiarità con Make o Ant. Se questo non è il caso, ecco una risposta (forse eccessivamente eccessivamente semplificata):

Rake è uno strumento che è possibile utilizzare con i progetti Ruby. Ti permette di usare il codice rubino per definire "compiti" che possono essere eseguiti nella riga di comando.

Il rastrello può essere downloaded and included in progetti rubino come una gemma di rubino.

Una volta installato, si definiscono le attività in un file denominato "Rakefile" che si aggiunge al progetto.

Noi lo chiamiamo un "tool di creazione", perché Rake è dotato di alcune librerie che lo rendono facile da fare i compiti che sono comuni durante il processo di compilazione/distribuire, come file operations (creare, cancellare, rinominare, & file in movimento), l'editoria siti via FTP/SSH e running tests.

Per ulteriori informazioni, ecco la documentazione del progetto: http://rake.rubyforge.org/