2009-04-07 28 views
60

En términos simples, ¿qué hace Rake? ¿Qué propósito tiene? Entiendo que es una herramienta de compilación, pero estoy buscando un poco más de detalle. (. Por un simplón)¿Qué es exactamente Rake?

+2

[Este video] (https://www.youtube.com/watch?v=AFPWDzHWjEY) es realmente excelente para la comprensión de rake en el nivel más básico. – filmnut

Respuesta

42

Pruebe el artículo de Martin Fowler en Rake para más información:

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

Su preámbulo es:

Rake es un lenguaje de construcción, similar en propósito de hacer y hormiga Como make y y es un lenguaje específico de dominio, a diferencia de esos dos es un DSL interno programado en el lenguaje Ruby. En este artículo se presenta rastrillo y describir algunas cosas interesantes que salió de mi uso de rastrillo para construir esta página web: modelos de dependencia, tareas sintetizados, de generación personalizada rutinas y la depuración de la acumulación guión.

Hay más información disponible en o enlazada desde la página principal del proyecto, así:

http://rake.rubyforge.org/

+0

¡Martin Fowler por la victoria! –

6

Rake le permite ejecutar el código Ruby a través de una bonita API. Un ejemplo es rake db: migrate. Puede ejecutar tareas automáticamente antes y después de otras tareas. Eso es todo.

56

Estas respuestas asumen que usted sabe lo que es una DSL, o está familiarizado con Make o Ant. Si ese no es el caso, aquí hay una respuesta (quizás demasiado simplificada):

Rake es una herramienta que puede usar con proyectos Ruby. Le permite usar código ruby ​​para definir "tareas" que se pueden ejecutar en la línea de comando.

El rastrillo puede ser downloaded and included en ruby ​​projects como una gema ruby.

Una vez instalado, define tareas en un archivo llamado "Rakefile" que agrega a su proyecto.

Lo llamamos un "herramienta de construcción" porque Rake viene con algunas bibliotecas que hacen que sea fácil de hacer tareas que son comunes durante el Proceso de Construcción/desplegar, como file operations (crear, eliminar, renombrar, & archivos móviles), publicación sitios a través de FTP/SSH y running tests.

Para obtener más información, aquí está la documentación del proyecto: http://rake.rubyforge.org/