2016-12-29 6 views
2

У меня есть локальная работа gitlab Я настраиваю в composer.json, который устанавливает пакет или пакет из моего gitlab, я сделал эту часть, это было сложно, но я сделал это.композитор сгенерирует .git папку с моим пакетом из gitlab

Проблема в том, что мой модуль при загрузке композитором, композитор клонирует его, вместо этого загружает его, поэтому создается .git/папка, и я не хочу этого.

советы

  • Это свежий установки
  • только у меня есть файл composer.json
  • буду прикрепить composer.json
  • я запустить эту команду, чтобы установить его

    композитор установить -o -prefer-dist

  • я уже проверить this пост
  • Испытываю изменения типа хранилища для VCS | GIT | пакет

мой composer.json

{ 
    "config":{ 
     "preferred-install": "dist", 
     "secure-http": false 
    }, 
    "minimum-stability": "dev", 
    "repositories": [ { 
     "type": "git", 
     "url": "http://gitlab.local/GROUPNAME/REPOSITORY.git" 
    }], 
    "require": { 
     "GROUPNAME/REPOSITORY": "dev-master" 
    } 
} 

Edit: Я пытался создать TAG с определенной версией и добавьте в composer.json эту версию и ничего не похоже.

+0

У меня такая же проблема. Вы исправите проблему? – Andrew

+0

Нет, я не. Я не мог решить эту проблему. – Emiliano

ответ

1

Проблема заключается в том, что Composer не знает, как загрузить упакованный ZIP-файл из вашего локального экземпляра Gitlab. Я даже не уверен, что у Gitlab есть API для этого (но я не смотрел).

Загрузка ZIP зависит от любого из этих двух ситуаций:

  1. composer.json точки метаданных на место загрузки для помеченной версии.
  2. Репозиторий размещен на хорошо известной службе с API, который позволяет загружать ZIP-файлы, не указывая явно на них в метаданных (например, с помощью github.com или bitbucket.org в качестве части URL-адреса репозитория).

Во всех других случаях Composer может клонировать репозиторий только потому, что это единственная информация, которую он имеет, чтобы получить нужную версию кода.

Там же дополнительные методы для создания DOWNLOADS себя, и это гораздо лучше по сравнению с перечислением всех ваши частных репозиториев, которые могли бы быть использованы в ключе «хранилища» корень composer.json:

Используйте либо Satis, местное Packagist, Toran Proxy или «Private Packagist» (в https://packagist.com/), в зависимости от вашей ситуации.

Идет с Satis, вероятно, самый простой способ, поскольку он имеет очень мало требований к инфраструктуре, он в основном создает статические файлы для веб-сервера HTTP.

Я хотел бы добавить, что после прочтения некоторых Composer коды, я подозреваю, что, установив gitlab-domains в (глобальной) конфигурации и с помощью gitlab вместо vcs или git как типа хранилища, вы должны быть в состоянии сделать Composer доступ к API Gitlab для загрузки ZIP вместо клонирования репо (обратите внимание, что Composer не будет клонировать клонирование с репо, вам необходимо удалить папку vendor, а затем установить/обновить еще раз).

+0

Можете ли вы сделать пример? – Emiliano

 Смежные вопросы

  • Нет связанных вопросов^_^