web-dev-qa-db-fra.com

installation laravel --prefer-dist

Je suis en train de suivre l'installation de Laravel sur leur site Web et je suis tombé sur cette ligne

composer create-project laravel/laravel --prefer-dist

Maintenant, qu'est-ce que le --prefer-dist partie signifie? Je ne vois rien sur leur documentation.

Merci d'avance.

28
sfsdfsdf sdfsdf

Tout est disponible ici: https://getcomposer.org/doc/03-cli.md#install

- prefer-dist: Inverse de --prefer-source, composer s'installera à partir de dist si possible. Cette peut accélérer considérablement les installations sur les serveurs de build et d'autres cas d'utilisation où vous n'exécutez généralement pas les mises à jour des fournisseurs. C'est également un moyen de contourner les problèmes avec git si vous n'avez pas une configuration appropriée.

14
Marwelln

--prefer-dist et --prefer-source sont les deux options de composer qui sont incluses dans diverses documentations avec un manque d'explication appropriée.

--prefer-dist essaierait de télécharger et de décompresser les archives des dépendances à l'aide de GitHub ou d'une autre API lorsqu'elles sont disponibles. Il est utilisé pour un téléchargement plus rapide des dépendances dans la plupart des cas. Il ne télécharge pas tout l'historique VCS des dépendances et il devrait être mieux mis en cache. Les archives sur GitHub peuvent également exclure certains fichiers dont vous n'avez pas besoin pour utiliser simplement la dépendance avec la directive d'exclusion .gitattributes.

--prefer-source essaiera de cloner et de conserver l'intégralité du référentiel VCS des dépendances lorsqu'il sera disponible. Ceci est utile lorsque vous souhaitez cloner les référentiels VCS d'origine dans votre fournisseur/dossier. Par exemple. vous voudrez peut-être travailler sur les dépendances - les modifier, les fourche, soumettre des demandes de tirage, etc. tout en les utilisant dans le cadre d'un projet plus vaste qui les requiert en premier lieu.

Pour parler simplement, le --prefer-source l'option préférera créer un répertoire de package qui est un "référentiel de contrôle de version", ce qui équivaut à ce que vous tapiez:

$ git clone ...

ou

$ svn checkout ...

En revanche, le --prefer-dist l'option préférera créer un non "référentiel de contrôle de version", ce qui équivaut à vous taper:

$ git clone ... ; rm -fr dir/.git

ou

$ svn export ...

N'oubliez pas que ce ne sont que des préférences, si une dépendance est requise à l'aide d'un référentiel VCS qui ne fournit pas d'archives telles que l'API GitHub, alors la seule option disponible est de cloner le référentiel.

51
sha-1