Drush Make удаляет папки .git

11

После глупого чувства с использованием drush make и github я обнаружил, что все папки .git (используемые git для записи истории, конфигурации, местоположения источника и т. Д.) Были удалены с помощью drush make, и я слышал об этом раньше, но не сталкивался я, поскольку я не поддерживал файлы make.

В частности, drush make удаляет папку .git, и вы можете увидеть, что если вы запустите ее с параметром --debug

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

В моем файле make я получаю 4 вещи из git repo, потому что я хочу отслеживать разработку на них, 2 из них - мои пользовательские компоненты (1 пользовательский модуль и 1 функция, которая записывает всю конфигурацию), а также другое ядро ​​drupal и медиа-модуль, к большому объему исправлений они получают. Вся цель кажется побежденной, если у меня не может быть соответствующих папок .git, но я также уверен, что есть способ, которым другие используют drush make с git, но не смог найти в моем быстром поиске.

Спасибо за ваше время!

Dipen
источник

Ответы:

17

Передайте переключатель «--working-copy» в Drush Make.

drush make --working-copy site.make
Том Киркпатрик
источник
5
Если вы хотите контролировать этот проект, вы можете добавить его в файл make:projects[project_name][options][working-copy] = TRUE
Энди
7

И если вы используете YAML для вашего файла make, следующее позволит вам сохранить информацию о репозитории .git:

projects:

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

И далее, если вы не хотите, чтобы drush добавлял дополнительную информацию в файлы .info проектов, убедитесь, что вы используете эту --no-gitinfofileопцию при запуске drush make.

geerlingguy
источник
3

В зависимости от проекта, в файле make вы можете добавить такую ​​опцию

проекты [имя_проекта] [скачать] [тип] = git
проекты [имя_проекта] [скачать] [url] = ssh: //git@...etc
проекты [имя_проекта] [параметры] [рабочая копия] = ИСТИНА
thtas
источник
Это не правильно; Комментарий Энди выше на самом деле работает. Вы должны использовать массив параметров, а не массив загрузки, чтобы получить рабочую копию.
Райан Шрама