Question

J'essaie d'installer TCPDF via composer.Cela fonctionne, mais malheureusement, il installe toujours également le répertoire .git entier qui contient 93 Mo.Je souhaite uniquement installer des fichiers TCPDF sans éléments .git.

Comment faire ça?

Voici mon 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"
    }
}

Merci d'avance.

MODIFICATION 1 :

Voici la configuration du compositeur dans le fichier du compositeur TCPDF téléchargé à partir du dépôt packagist - je ne sais pas si cela pourrait aider à résoudre le problème :

{
    "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"
        ]
    }
}

MODIFIER 2 :

J'ai modifié la configuration du compositeur comme suit en ajoutant l'option de configuration "preferred-install" :"dist", mais n'a pas aidé.J'ai aussi essayé "dev-master", toujours pareil...:-(

{
    "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"
    }
}
Était-ce utile?

La solution

Conseils généraux pour éviter les clones

Si vous obtenez le répertoire entier, cela doit être soit parce que vous avez défini --prefer-source lors de l'installation, ou vous avez un preferred-install valeur de configuration définie sur source, ou vous installez le package dev-master, auquel cas Composer utilise par défaut l'installation source (git clone).

La solution dépend de la situation exacte, et vous n'avez pas donné suffisamment de détails pour dire laquelle est la bonne, mais vous pouvez très probablement y remédier avec l'une des solutions suivantes :

  • ensemble --prefer-dist lors de l'installation
  • utiliser composer config preferred-install dist mettre le drapeau en permanence
  • assurez-vous d'installer uniquement les versions étiquetées en exigeant "tecnick.com/tcpdf": "~6.0@stable", alors il devrait toujours choisir le package dist par défaut.

Cas particulier pour les packages non hébergés sur github ou bitbucket :

https://packagist.org/packages/tecnick.com/tcpdf est en fait hébergé sur sourceforge, qui ne prend pas en charge la création automatique de zip à partir d'une révision git.En tant que tel, le packagiste ne peut pas vous fournir de zips pour le moment et le compositeur doit donc cloner le dépôt.

La seule solution pour l'instant est de demander au responsable de déplacer le paquet vers github, ne serait-ce qu'en tant que miroir en lecture seule.

https://github.com/tcpdf-clone/tcpdf existe mais je ne sais pas s'il est officiellement maintenu ou non.Si oui ou s'il est au moins fiable, ce serait une option de changer l'URL du packagegist pour le package tcpdf pour qu'elle soit celle de github.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top