Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
composer [Le 10/05/2020, 10:23] – [Pré-requis] 197.238.132.221composer [Le 09/03/2023, 11:29] (Version actuelle) – contrib !-) bcag2
Ligne 10: Ligne 10:
  
   * Avoir [[:php#installation|installé PHP]] en ligne de commande.   * Avoir [[:php#installation|installé PHP]] en ligne de commande.
-<note tip>Sur Ubuntu le paquet [[apt>php-cli]] est enincipe installé par défaut avec n'importe quelle [[:php#installation|installation de PHP]], ou avec la pilhhjj yggve [[:LAMP]].+<note tip>Sur Ubuntu le paquet [[apt>php-cli]] est en principe installé par défaut avec n'importe quelle [[:php#installation|installation de PHP]], ou avec la pile [[:LAMP]].
  
 Donc si vous utilisez déjà PHP vous n'avez très probablement rien de plus à installer.</note> Donc si vous utilisez déjà PHP vous n'avez très probablement rien de plus à installer.</note>
Ligne 18: Ligne 18:
 Pour installer **Composer** en suivant les [[https://getcomposer.org/download/|indications de la documentation officielle]], ouvrez un terminal et copiez-collez les lignes suivantes : Pour installer **Composer** en suivant les [[https://getcomposer.org/download/|indications de la documentation officielle]], ouvrez un terminal et copiez-collez les lignes suivantes :
  
-<code>php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" +<code bash> 
-php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" +php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" 
-sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer +php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" 
-php -r "unlink('composer-setup.php');"</code> +php composer-setup.php 
 +php -r "unlink('composer-setup.php');" 
 +</code> 
 +Adaptez éventuellement le hash ''55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae'' à celui de la dernière version (voir la [[https://getcomposer.org/download/|documentation officielle]]). 
 +<note important>Réaliser ces commandes à partir de votre répertoire ///home/$USER/// sinon le fichier //composer.phar// sera dans le répertoire courant</note>
 Vous pouvez désormais utiliser Composer : Vous pouvez désormais utiliser Composer :
 <code>composer</code> <code>composer</code>
 +<note tip>Si la commande ''composer'' ne fonctionne pas, essayez :
 +<code bash>php composer.phar</code>
 +On peut aussi créer un [[:alias]] :
 +<code bash>alias composer='php ~/composer.phar'</code> </note>
 +
 +===== Mise à jour =====
 +Pour mettre à jour composer v2 entre 2 versions mineures (par exemple v2.3.x vers v2.5.x) :
 +<code bash>composer self-update</code>
 +
 +En octobre 2020 est sortie [[https://blog.packagist.com/composer-2-0-is-now-available/|la version 2.0 de composer]]\\
 +Pour mettre à jour composer v1.x vers v2, vous pouvez exécuter :\\
 +<code bash>composer self-update --2</code>
 +<note important>Cette mise à jour ne fonctionne que si vous aviez installé //composer// suivant les instructions [[:composer#installation|d'installation ci-dessus]], sinon, commencer par désinstaller la version du dépôt officiel <code bash>sudo apt remove composer</code></note>
  
 ===== Utilisation ===== ===== Utilisation =====
Ligne 45: Ligne 61:
 Ceci aura pour effet de créer un fichier ''composer.json'' contenant toutes les informations de votre projet (ce qui peut être utile dans le cadre d'une éventuelle publication sur [[https://packagist.org/|Packagist]] ;-)), dont surtout ses dépendances. Ceci aura pour effet de créer un fichier ''composer.json'' contenant toutes les informations de votre projet (ce qui peut être utile dans le cadre d'une éventuelle publication sur [[https://packagist.org/|Packagist]] ;-)), dont surtout ses dépendances.
  
-Pour chaque dépendance vous pouvez choisir de spécifier finement les versions à utiliser. +Pour chaque dépendance vous pouvez choisir de spécifier finement les versions à utiliser.
  
 ==== Installer des dépendances ==== ==== Installer des dépendances ====
Ligne 54: Ligne 70:
  
 Si il s'agit de votre projet, il n'est donc pas nécessaire de le distribuer avec ce répertoire ''vendor/''. Si il s'agit de votre projet, il n'est donc pas nécessaire de le distribuer avec ce répertoire ''vendor/''.
 +
 +===== Problèmes courants =====
 +
 +==== Impossible de mettre à jour ====
 +
 +La mise à jour se fait normalement par
 +<code bash>composer self-update</code>
 +Si vous avez installé composer au moyen d'[[:APT]], il faut le désinstaller :
 +<code bash>
 +sudo apt autoremove composer
 +</code>
 +puis le ré-installer manuellement comme [[:composer#installation|expliqué plus haut]].
  
 ===== Voir aussi ===== ===== Voir aussi =====
Ligne 62: Ligne 90:
  
 ---- ----
-//Contributeurs : [[:utilisateurs:d10g3n]], [[:utilisateurs:krodelabestiole]]//+//Contributeurs : [[:utilisateurs:d10g3n]], [[:utilisateurs:krodelabestiole]]//, [[:utilisateurs:bcag2]]//