Comment mettre à jour une seule bibliothèque avec Composer?

Je n’ai besoin d’installer qu’un seul paquet pour ma dissortingbution SF2 (DocsortingneFixtures).

Quand je cours

php composer.phar update 

Je reçois

  - Updating twig/twig (dev-master 39d94fa => v1.13.0) The package has modified files: M CHANGELOG M doc/filters/batch.test M doc/filters/index.rst M doc/filters/url_encode.rst M doc/functions/index.rst M doc/tags/index.rst M doc/tests/index.rst M lib/Twig/Autoloader.php M lib/Twig/Comstackr.php M lib/Twig/ComstackrInterface.php -10 more files modified, choose "v" to view the full list 

Il semble que le dernier développeur ait édité beaucoup de fichiers à l’intérieur du fournisseur.

Pour contourner cela, j’ai essayé

 php composer.phar update  

Mais cela ne semble pas fonctionner. Comment puis-je mettre à jour / installer une seule bibliothèque à partir de composer.json?

Pour installer docsortingne/docsortingne-fixtures-bundle avec la version 2.1.* Et la stabilité minimale @dev utilise ceci:

 composer.phar require docsortingne/docsortingne-fixtures-bundle:2.1.*@dev 

puis pour mettre à jour que ce seul paquet:

 composer.phar update docsortingne/docsortingne-fixtures-bundle 

Si vous souhaitez simplement mettre à jour quelques packages et pas tous, vous pouvez les répertorier comme suit:

 php composer.phar update vendor/package:2.* vendor/package2:dev-master 

Vous pouvez également utiliser des caractères génériques pour mettre à jour plusieurs paquets à la fois:

 php composer.phar update vendor/* 
  • –prefer-source : installe les paquetages depuis le source quand ils sont disponibles.
  • –prefer-dist : installe les paquets de dist quand ils sont disponibles.
  • –ignore-platform-reqs : ignore les exigences php , hhvm , lib-* et ext-* et force l’installation même si la machine locale ne les remplit pas. Voir aussi l’ option de configuration de la platformplatform .
  • –dry-run : simule la commande sans rien faire.
  • –dev : installe les paquets listés dans require-dev (c’est le comportement par défaut).
  • –no-dev : Ignore l’installation des paquets listés dans require-dev . La génération de l’ autoload-dev ignore les règles de autoload-dev .
  • –no-autoloader : ignore la génération de l’autoloader.
  • –no-scripts : Ignore l’exécution des scripts définis dans composer.json.
  • –no-plugins : désactive les plugins.
  • –no-progress : Supprime l’affichage de la progression qui peut perturber certains terminaux ou scripts qui ne gèrent pas les caractères de retour arrière.
  • –optimize-autoloader (-o) : convertit le chargement automatique PSR-0/4 en classmap pour obtenir un chargeur automatique plus rapide. Ceci est recommandé en particulier pour la production, mais peut prendre un peu de temps pour être exécuté par défaut.
  • –lock : Ne met à jour que le hachage du fichier de locking pour supprimer les avertissements concernant le blocage du fichier de locking.
  • –with-dependencies : ajoute également toutes les dépendances des packages inclus dans la liste blanche à la liste blanche.
  • –prefer-stable : Préfère les versions stables des dépendances.
  • – Préférer le plus bas : Préférer les versions les plus basses des dépendances. Utile pour tester des versions minimales d’exigences, généralement utilisées avec --prefer-stable .

Vous pouvez essentiellement faire suivre un pour installer un nouveau paquet aussi.

 php composer.phar require 

alors le terminal vous demandera d’entrer le nom du paquet pour la recherche.

 $ Search for a package []: //Your package name here 

Ensuite, le terminal demandera la version du paquet (si vous souhaitez que la dernière version rest vide)

 $ Enter the version constraint to require (or leave blank to use the latest version) []: //your version number here 

Ensuite, il vous suffit d’appuyer sur la touche retour. Terminal vous demandera un autre paquet, si vous ne voulez pas en installer un autre, appuyez simplement sur la touche retour et vous aurez terminé.

Pour vous assurer que le composeur met à jour un paquet déjà installé à la dernière version dans les limites des contraintes de version que vous avez définies dans composer.json, supprimez le paquet du fournisseur, puis exécutez:

 php composer.phar update vendor/package