rubin / Rechen

Zuhause

github.com/ruby/rake

Fehler

github.com/ruby/rake/issues

Dokumente

ruby.github.io/rake

Beschreibung¶

Rake ist ein Make-ähnliches Programm, das in Ruby implementiert ist. Aufgaben und Abhängigkeiten werden in der Standard-Ruby-Syntax angegeben.

Rake hat folgende Eigenschaften:

  • Rakefiles (Rakes Version von Makefiles) sind vollständig in der Standard-Ruby-Syntax definiert. Keine XML-Dateien zu bearbeiten. Keine schrullige Makefile-Syntax, um die man sich Sorgen machen muss (ist das ein Tab oder ein Leerzeichen?)

  • Benutzer können Aufgaben mit Voraussetzungen angeben.

  • Rake unterstützt Regelmuster, um implizite Aufgaben zu synthetisieren.

  • Flexible Dateilisten, die sich wie Arrays verhalten, aber über die Bearbeitung von Dateinamen und Pfaden Bescheid wissen.

  • Eine Bibliothek mit vorgefertigten Aufgaben, um das Erstellen von Rakefiles zu vereinfachen. Zum Beispiel Aufgaben zum Erstellen von Tarballs. (Früher waren Aufgaben zum Erstellen von RDoc, Gems und Veröffentlichen auf FTP in Rake enthalten, aber jetzt sind sie in RDoc, RubyGems und rake-contrib verfügbar.)

  • Unterstützt die parallele Ausführung von Aufgaben.

Installation¶

Gem Installation¶

Laden Sie Rake herunter und installieren Sie es mit den folgenden Schritten.

gem install rake

Verwendung¶

Einfaches Beispiel¶

Zuerst müssen Sie eine „Rakefile“ -Datei schreiben, die die Build-Regeln enthält. Hier ist ein einfaches Beispiel:

task default: %wtask :test do ruby "test/unittest.rb"end

Dieses Rakefile hat zwei Aufgaben:

  • Eine Aufgabe namens „test“, die beim Aufruf eine Unit–Testdatei in Ruby ausführt.

  • Eine Aufgabe mit dem Namen „default“. Diese Aufgabe macht nichts von selbst, aber sie hat genau eine Abhängigkeit, nämlich die Aufgabe „test“. Wenn Sie die Aufgabe „Standard“ aufrufen, ruft Rake auch die Aufgabe „Test“ auf.

Wenn Sie den Befehl „rake“ ohne Optionen ausführen, wird die Aufgabe „Standard“ im Rakefile ausgeführt:

% lsRakefile test/% rake(in /home/some_user/Projects/rake)ruby test/unittest.rb....unit test output here...

Geben Sie „rake –help“ für alle verfügbaren Optionen ein.

Ressourcen¶

Rake-Informationen¶

  • Rake-Befehlszeile

  • Rakefiles schreiben

  • Die ursprüngliche Rake-Ankündigung

  • Rake Glossar

Präsentationen und Artikel über Rake¶

  • Avdi Grimms Rake-Serie:

    1. Rake Grundlagen

    2. Rake-Dateilisten

    3. Rake-Regeln

    4. Rake Pfadkarte

    5. Dateioperationen

    6. Sauber und Clobber

    7. Multitasking

  • Jim Weirichs RubyConf-Präsentation 2003

  • Martin Fowlers Artikel über Rake: martinfowler.com/articles/rake.html

Andere Make Re-envisionings …¶

Rake ist ein später Eintrag im Feld make replacement. Hier sind Links zu anderen Projekten mit ähnlichen (und nicht so ähnlichen) Zielen.

  • directory.fsf.org/wiki/Bras – Bras, eine der frühesten Implementierungen von „make in a scripting language“.

  • www.a-a-p.org – Machen Sie in Python

  • ant.apache.org – Das Ant-Projekt

  • search.cpan.org/search?query=PerlBuildSystem – Das Perl-Build-System

  • www.rubydoc.info/gems/rant/0.5.7/frames – Rant, ein weiteres Ruby-Make-Tool.

Credits¶

Jim Weirich

Der ursprünglich Rake erstellt hat.

Ryan Dlugosz

Für das erste Gespräch, das Rake ausgelöst hat.

Nobuyoshi Nakada <[email protected] >

Für den ersten Patch für die Regelunterstützung.

Tilman Sauerbeck <[email protected] >

Für den Patch für rekursive Regeln.

Eric Hodel

Für Hilfe bei der Aufrechterhaltung rake.

Hiroshi SHIBATA

Betreuer von Rake 10.X und Rake 11.X

Lizenz¶

Rake ist unter einer MIT-Lizenz verfügbar.

:einschließen: MIT-LIZENZ

Andere Sachen¶

Autor

Jim Weirich <[email protected]>

Erfordert

Ruby 2.0.0 oder höher

Lizenz

Copyright Jim Weirich. Veröffentlicht unter einer MIT-Style-Lizenz. Siehe die MIT-Lizenzdatei, die in der Distribution enthalten ist.

Garantie¶

Diese Software wird „wie besehen“ und ohne ausdrückliche oder stillschweigende Garantien bereitgestellt, einschließlich, ohne Einschränkung, der stillschweigenden Garantien der Marktgängigkeit und Eignung für einen bestimmten Zweck.

Historical¶

Rake wurde ursprünglich von Jim Weirich entwickelt, der leider im Februar 2014 verstorben ist. Dieses Repository wurde ursprünglich bei github gehostet.com / jimweirich / rake wurde jedoch mit seinem Tod nach ruby / rake verschoben.

Sie können Jims letzten Commit hier anzeigen: github.com/jimweirich/rake/tree/336559f28f55bce418e2ebcc0a57548dcbac4025

Sie können mehr über Jim bei Wikipedia lesen.

Vielen Dank für dieses großartige Tool, Jim. Wir werden uns an dich erinnern.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.