Wie mache ich einen Git-Klon mit Drush, um die HEAD-Version eines Moduls herunterzuladen?

11

Gibt es eine Möglichkeit, die HEAD-Version eines Moduls im Git-Repository von drupal.org zu klonen oder abzurufen?

Wenn ich zum Beispiel auf Drupal 7 bin und der letzte Zweig von Views 3 ist, möchte ich Folgendes tun:

drush git-clone views

etwas erreichen, das gleichbedeutend ist mit:

cd sites/all/modules/
git clone --recursive --branch 7.x-3.x http://git.drupal.org/project/views.git

Im Idealfall sollte mit using drush git-clone views-3xder 3.x-Zweig explizit geklont werden.

Ist das möglich oder träume ich? Dies wäre sehr nützlich für die Entwicklung.

Pere
quelle

Antworten:

10
drush dl views-7.x-3.x --package-handler=git_drupalorg

Aktualisieren:

Richtig, wenn es Commits gibt, nachdem die git pullEntwicklungsversion gepackt wurde, müssen Sie ausgeführt werden , um nach dem Auschecken über drush dl zu HEAD zu gelangen. Wenn es keine gepackte Entwicklungsversion gibt und Drush eine stabile Version git checkout 7.x-3.xauscheckt , müssen Sie drush dl ausführen.

Es gibt keinen Drush-Befehl, um einen wörtlichen Git-Klon zu erstellen. ein teil der "wertschöpfung" von drush dl ist, dass es veröffentlichte veröffentlichungen erfasst. Wenn Git-Klon das ist, was Sie wollen, ist vielleicht ein kurzes Bash-Skript Ihre beste Lösung. Etwas wie das:

Verwendung:

$ clonedev views 3

Beispielskript:

#!/bin/bash

MODULE=$1
VERSION=$2

DRUPAL=$(drush status "Drupal Version" --pipe | sed -e 's/\..*//')
if [ -n $DRUPAL ] ; then
  cd $(drush drupal-directory modules)
else
  DRUPAL=7
fi

git clone --recursive --branch $DRUPAL.x-$VERSION.x http://git.drupal.org/project/$MODULE.git

Anpassen.

greg_1_anderson
quelle
Ich habe es gerade ausprobiert und es lädt die neueste Entwicklerversion herunter, nicht HEAD. Wenn keine Entwicklerversion verfügbar ist, wird die neueste empfohlene oder unterstützte Version heruntergeladen.
Pere
Okay, siehe aktualisierte Antwort.
Greg_1_anderson