Warum ist Rake DB: Migrate: Reset nicht in Rake -T aufgeführt?


72

Warum werden einige Rechenaufgaben nicht von aufgelistet rake -T? Wie db:migrate:reset? Ich kann es problemlos ausführen, aber warum ist es dort nicht aufgeführt? Gibt es eine Möglichkeit, eine vollständige Liste der Rechenaufgaben zu erhalten?

% Rechen -T
(in / home / zeus / projects / my_project)
Rake about # Listet Versionen aller Rails-Frameworks und der Umgebung auf
rake db: create # Erstellt die Datenbank aus config / database.yml für die aktuelle Rails.env (verwenden Sie db: create: all, um alle dbs in der Konfiguration zu erstellen)
rake db: drop # Löscht die Datenbank für die aktuelle Rails.env (verwenden Sie db: drop: all, um alle Datenbanken zu löschen)
rake db: fixtures: load # Lädt Fixtures in die Datenbank der aktuellen Umgebung.
rake db: migrate # Migriert die Datenbank (Optionen: VERSION = x, VERBOSE = false).
Rake db: migrate: status # Zeigt den Status von Migrationen an
rake db: rollback # Rollt das Schema auf die vorherige Version zurück (geben Sie die Schritte w / STEP = n an).
rake db: schema: dump # Erstellen Sie eine db / schema.rb-Datei, die portabel für jede von AR unterstützte Datenbank verwendet werden kann
rake db: schema: load # Lädt eine schema.rb-Datei in die Datenbank
Rake db: seed # Lädt die Seed-Daten von db / seeds.rb
rake db: setup # Erstellen Sie die Datenbank, laden Sie das Schema und initialisieren Sie mit den Startdaten (verwenden Sie db: reset, um auch die Datenbank zuerst zu löschen).
rake db: struct: dump # Setzt die Datenbankstruktur in eine SQL-Datei
rake db: version # Ruft die aktuelle Versionsnummer des Schemas ab
Rake doc: app # Generiere Dokumente für die App - auch verfügbar doc: Rails, doc: Guides, doc: Plugins (Optionen: TEMPLATE = / rdoc-template.rb, TITLE = "Custom Title")
rake erd # Generieren Sie ein Entity-Relationship-Diagramm basierend auf Ihren Modellen
Rake-Protokoll: clear # Schneidet alle * .log-Dateien in log / auf null Byte ab
Rechen-Middleware # Druckt Ihren Rack-Middleware-Stapel aus
Rechennotizen # Zählen Sie alle Anmerkungen auf (verwenden Sie Notizen: Optimieren ,: Fixme ,: Aufgaben für den Fokus)
Rake Notes: custom # Zählen Sie eine benutzerdefinierte Annotation auf und geben Sie sie mit ANNOTATION = CUSTOM an
Rechenschienen: Vorlage # Wendet die von LOCATION = / path / to / template bereitgestellte Vorlage an
Rake Rails: Update # Aktualisieren Sie sowohl Configs als auch Public / Javascripts von Rails (oder verwenden Sie einfach Update: Javascripts oder Update: Configs).
Rechenrouten # Drucken Sie alle definierten Routen in übereinstimmender Reihenfolge mit Namen aus.
Rechengeheimnis # Generieren Sie einen krytografisch sicheren geheimen Schlüssel (dieser wird normalerweise verwendet, um ein Geheimnis für Cookie-Sitzungen zu generieren).
Rake-Spezifikation # Führen Sie alle Spezifikationen im Spezifikationsverzeichnis aus (ausgenommen Plugin-Spezifikationen).
Rechenspezifikation: Akzeptanz # Führen Sie die Codebeispiele in Spezifikation / Akzeptanz aus
Rechenspezifikation: Steuerungen # Führen Sie die Codebeispiele in Spezifikation / Steuerungen aus
Rechenspezifikation: Helfer # Führen Sie die Codebeispiele in Spezifikation / Helfern aus
Rake-Spezifikation: lib # Führen Sie die Codebeispiele in spec / lib aus
Rake-Spezifikation: Mailer # Führen Sie die Codebeispiele in Spezifikation / Mailer aus
Rechenspezifikation: Modelle # Führen Sie die Codebeispiele in Spezifikation / Modelle aus
Rechenspezifikation: rcov # Führen Sie alle Spezifikationen mit rcov aus
Rechenspezifikation: Anforderungen # Führen Sie die Codebeispiele in Spezifikation / Anforderungen aus
Rechenspezifikation: Routing # Führen Sie die Codebeispiele in Spezifikation / Routing aus
Rake-Spezifikation: Ansichten # Führen Sie die Codebeispiele in Spezifikation / Ansichten aus
Rake-Statistiken # Code-Statistiken (KLOCs usw.) aus der Anwendung melden
Rake-Test # Führt Test: Einheiten, Test: Funktionale, Test: Integration zusammen aus (auch verfügbar: Test: Benchmark, Test: Profil, Test: Plugins)
Rake-Test: Letzte # Führen Sie Tests für Letzte Tests durch: Bereiten Sie die letzten Änderungen vor / testen Sie sie
Rake-Test: nicht festgeschrieben # Tests für nicht festgeschriebenen Test ausführen: Änderungen seit dem letzten Einchecken vorbereiten / testen (nur Subversion und Git)
Rechenzeit: Zonen: alle # Zeigt alle Zeitzonen an, die ebenfalls verfügbar sind: Zeit: Zonen: us, Zeit: Zonen: lokal - Filter mit OFFSET-Parameter, z. B. OFFSET = -6
rake tmp: clear # Löscht Sitzungs-, Cache- und Socket-Dateien von tmp / (schmal w / tmp: Sitzungen: clear, tmp: cache: clear, tmp: sockets: clear)
rake tmp: create # Erstellt tmp-Verzeichnisse für Sitzungen, Cache, Sockets und Pids

Wenn ich Rake-T laufen lasse, wird angezeigt, welche Rails laufen Sie?
— Thatmiddleway

Ich benutze Schienen 3.0.1. Auf zwei verschiedenen Systemen mit zwei verschiedenen Projekten. Es wird nicht auf beiden Systemen angezeigt (siehe vollständige Ausgabe im bearbeiteten Beitrag).
— Zardoz

Antworten:


79

Aufgaben ohne Beschreibung werden nicht angezeigt.

BEARBEITEN: Es sieht so aus, als hätte DHH die Beschreibung für einige Aufgaben aus Rails 3 entfernt, um den Lärm zu reduzieren. Rake DB: Setup enthält jedoch einen Hinweis zu DB: Reset.

http://github.com/rails/rails/commit/983815632cc1d316c7c803a47be28f1abe6698fb


34
Als jemand, der Rails lernt, habe ich viel Zeit damit verschwendet, eine gute, klare Dokumentation für die Rake-Aufgaben im Zusammenhang mit der Datenbankmigration zu finden.
— Jan Hettich

63

Sie können auch rake db -T -Aalle Aufgaben anzeigen, auch nicht kommentierte. Als Referenz führen diese Schalter Folgendes aus:

-T, --tasks [PATTERN]    Display the tasks (matching optional PATTERN) with 
                         descriptions, then exit.
-A, --all                Show all tasks, even uncommented ones (in combination 
                         with -T or -D)

3
Beachten Sie, dass die Option -A (oder --all) in Rake 10 hinzugefügt wurde.
— Slothbear

1
rake -T -Azeigt alle Aufgaben. rake -T db -AZeigt alle Aufgaben an, die dbim Aufgabennamen enthalten sind (Position db nachher notieren -T).
— Eliot Sykes

Funktioniert auch für Capistrano 3:cap -T rails -A
— Koen.

41

Sie können verwenden rake -P | grep rake, um die Namen aller Rake-Aufgaben anzuzeigen.


Genau das brauchte ich. Ich habe dies meinem bash_profile mit dem Alias ​​"raket" als solchem ​​hinzugefügt: # Zeigt alle verfügbaren Rake-Aufgaben an, einschließlich solcher, die keine Beschreibungen haben. alias raket = "rake -P | grep rake" Funktioniert hervorragend. Vielen Dank!
— Donn Felker

8

Als Folge der Antwort von Thomas Obermüller müssen Sie Folgendes tun, da das -T-Flag ein Positionsargument enthält, um nur die 'db'-Namespace-Aufgaben (zumindest mit Rake 10.0.3) zu erhalten: rake -T db -A



Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.