Композитор устанавливает TCPDF с помощью репозитория .GIT
-
21-12-2019 - |
Вопрос
Я пытаюсь установить TCPDF через композитор. Он работает, но, к сожалению, он всегда устанавливает также весь каталог .git, который имеет 93 МБ. Я только хочу установить файлы TCPDF без материалов .git.
Как это сделать?
Вот мой composer.json:
{
"name": "myprojects/project1",
"require": {
"yiisoft/yii": "~1.1.15",
"twbs/bootstrap": "~3.2.0",
"tecnick.com/tcpdf": "~6.0.89",
"phpoffice/phpexcel": "~1.8.0"
}
}
.
Спасибо заранее.
<Сильные> Редактировать 1:
Ниже приведен конфигурация композитора в файле композитора TCPDF, загруженным из Packagist Reppo - не уверен, может ли это помочь решить проблему:
{
"name": "tecnick.com/tcpdf",
"version": "6.0.089",
"homepage": "http://www.tcpdf.org/",
"type": "library",
"description": "TCPDF is a PHP class for generating PDF documents.",
"keywords": ["PDF","tcpdf","PDFD32000-2008","qrcode","datamatrix","pdf417","barcodes"],
"license": "LGPLv3",
"authors": [
{
"name": "Nicola Asuni",
"email": "info@tecnick.com",
"homepage": "http://nicolaasuni.tecnick.com"
}
],
"require": {
"php": ">=5.3.0"
},
"autoload": {
"classmap": [
"fonts",
"config",
"include",
"tcpdf.php",
"tcpdf_parser.php",
"tcpdf_import.php",
"tcpdf_barcodes_1d.php",
"tcpdf_barcodes_2d.php",
"include/tcpdf_colors.php",
"include/tcpdf_filters.php",
"include/tcpdf_font_data.php",
"include/tcpdf_fonts.php",
"include/tcpdf_images.php",
"include/tcpdf_static.php",
"include/barcodes/datamatrix.php",
"include/barcodes/pdf417.php",
"include/barcodes/qrcode.php"
]
}
}
.
<Сильные> Редактировать 2:
Я изменил Composer Config следующим образом, добавляя опцию Config «Предпочтителей-Установить»: «dist», но не помогло.Я также пробовал «Dev-Master», все же одинаково ...: - (
{
"name": "myprojects/project1",
"config": {
"preferred-install" : "dist"
},
"require": {
"yiisoft/yii": "~1.1.15",
"twbs/bootstrap": "~3.2.0",
"tecnick.com/tcpdf": "~6.0@stable",
"phpoffice/phpexcel": "~1.8.0"
}
}
. Решение
Общий совет для избежания клонов
Если вы получите весь каталог, он должен быть либо потому, что вы устанавливаете --prefer-source
при установке, либо у вас есть значение Config Config, установленное для preferred-install
, или вы устанавливаете пакет Dev-Master, в каком случае Composer по умолчанию используется для использования источника установки (Гит-клон).
Решение зависит от точной ситуации, и вы не давали достаточно деталей, чтобы сказать, что является правильным, но, скорее всего, вы можете исправить это с любым из них:
- .
- Установите
source
при установке - Используйте
--prefer-dist
, чтобы навсегда установить флаг - Убедитесь, что вы устанавливаете только помеченные релизы, требуя генеракодицетагкода, то он всегда должен выбирать пакет DIST по умолчанию.
Особый случай для пакетов, не размещенных на GitHub или BitBucket:
https://packagist.org/packages/tecnick.com/tcpdf На самом деле принимается на SourceForge, который не поддерживает автоматическое здание ZIP из любой ревизии Git. В качестве такого пакагиста в данный момент не предоставляет вам Zips, и поэтому композитор должен клонировать репо.
Единственное решение на данный момент состоит в том, чтобы получить сопровождающую для перемещения пакета в GitHub, если только в качестве готовности.
https://github.com/tcpdf-clone/tcpdf существует, но я не T знать, если он официально поддерживается или нет. Если да, или если он доверяет, по крайней мере, доверяется, это будет возможность изменить URL-адрес Packagist для пакета TCPDF, чтобы иметь этот Github One.