Drush Make entfernt .git-Ordner

11

Nach einem dummen Gefühl mit Drush Make und Github fand ich heraus, dass alle .git-Ordner (die von Git zum Aufzeichnen von Verlauf, Konfiguration, Ursprungsort usw. verwendet wurden) von Drush Make entfernt wurden, und ich habe davon schon einmal gehört, bin aber nicht darauf gestoßen ich selbst, da ich die make-Dateien nicht pflegte.

Speziell drush make entfernt den Ordner .git und Sie können dies sehen, wenn Sie ihn mit der Option --debug ausführen

Executing: rm -rf '/tmp/drush_make_tmp_1305733094/__git__/__build__/.git'

In meiner make-Datei rufe ich 4 Dinge aus git repo ab, weil ich die Entwicklung auf ihnen verfolgen möchte. 2 davon sind meine benutzerdefinierten Komponenten (1 benutzerdefiniertes Modul und 1 Funktion, die die gesamte Konfiguration aufzeichnet) und das andere Drupal-Kern- und Medienmodul sind fällig zu viel Fixes erhalten sie. Der ganze Zweck scheint gescheitert zu sein, wenn ich keine entsprechenden .git-Ordner haben kann, aber ich bin mir auch sicher, dass es einen Weg gibt, wie andere Drush Make mit Git verwenden, aber in meiner Schnellsuche nicht finden konnten.

Vielen Dank für Ihre Zeit!

Dipen
quelle

Antworten:

17

Übergeben Sie den Schalter "--working-copy" an Drush Make.

drush make --working-copy site.make
Tom Kirkpatrick
quelle
5
Wenn Sie pro Projekt die Kontrolle darüber haben möchten, können Sie der make-Datei hinzufügen:projects[project_name][options][working-copy] = TRUE
Andy
7

Wenn Sie YAML für Ihre make-Datei verwenden, können Sie die .git-Repository-Informationen wie folgt beibehalten:

projects:

  drupal:
    type: core
    version: 8.0.x
    download:
      working-copy: true

Wenn Sie nicht möchten, dass drush zusätzliche Informationen zu den .info-Dateien von Projekten hinzufügt, stellen Sie sicher, dass Sie die --no-gitinfofileOption beim Ausführen verwenden drush make.

geerlingguy
quelle
3

Auf Projektbasis können Sie in einer make-Datei die folgende Option hinzufügen

projekte [projektname] [download] [typ] = git
projekte [projektname] [download] [url] = ssh: //[email protected]
Projekte [Projektname] [Optionen] [Arbeitskopie] = WAHR
thtas
quelle
Das ist nicht richtig; Andys Kommentar oben funktioniert tatsächlich. Sie müssen das Optionsarray und nicht das Download-Array verwenden, um die Arbeitskopie abzurufen.
Ryan Szrama