Ich muss nur 1 Paket für meine SF2-Distribution (DoctrineFixtures) installieren.
Wenn ich renne
php composer.phar update
Ich bekomme
- 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/Compiler.php
M lib/Twig/CompilerInterface.php
-10 more files modified, choose "v" to view the full list
Es scheint, dass der letzte Entwickler viele Dateien innerhalb des Anbieters bearbeitet hat.
Um das zu umgehen, habe ich es versucht
php composer.phar update <package_name>
Das scheint aber nicht zu funktionieren. Wie kann ich nur eine Bibliothek von composer.json aktualisieren/installieren?
Um doctrine/doctrine-fixtures-bundle
mit Version 2.1.*
und minimaler Stabilität @dev
zu installieren, verwenden Sie folgendes
composer.phar require doctrine/doctrine-fixtures-bundle:2.1.*@dev
dann nur dieses einzelne Paket aktualisieren:
composer.phar update doctrine/doctrine-fixtures-bundle
Wenn Sie nur einige Pakete und nicht alle aktualisieren möchten, können Sie sie als solche auflisten:
php composer.phar update vendor/package:2.* vendor/package2:dev-master
Sie können auch Platzhalter verwenden, um mehrere Pakete gleichzeitig zu aktualisieren:
php composer.phar update vendor/*
source
, falls verfügbar.dist
, falls verfügbar.php
, hhvm
, lib-*
und ext-*
und erzwinge die Installation, auch wenn der lokale Rechner diese nicht erfüllt. Siehe auch platform
config-Option .require-dev
aufgelistet sind (dies ist das Standardverhalten).require-dev
aufgelistet sind, überspringen. Die Autoloader-Generation überspringt die autoload-dev
-Regeln.--prefer-stable
verwendet werden.Grundsätzlich können Sie folgendes tun, um ein neues Paket zu installieren.
php composer.phar require
das Terminal fordert Sie dann auf, den Namen des Pakets für die Suche einzugeben.
$ Search for a package []: //Your package name here
Dann fragt das Terminal nach der Version des Pakets (Wenn Sie die neueste Version wünschen, lassen Sie sie einfach leer)
$ Enter the version constraint to require (or leave blank to use the latest version) []: //your version number here
Dann drücken Sie einfach die Return-Taste. Das Terminal fragt nach einem anderen Paket. Wenn Sie kein weiteres installieren möchten, drücken Sie einfach die Eingabetaste, und Sie sind fertig.
Um sicherzustellen, dass Composer ein Paket aktualisiert, das innerhalb der in composer.json festgelegten Versionseinschränkungen auf die letzte Version installiert ist, entfernen Sie das Paket vom Anbieter und führen Sie dann Folgendes aus:
php composer.phar update vendor/package
Angenommen, Sie haben composer.json "parsecsv/php-parsecsv": "0.*",
und Ihre composer.lock-Datei
"name": "parsecsv/php-parsecsv",
"version": "0.1.4",
Das neueste 0.*
-Release ist 0.3.2
und das neueste Release ist 1.1.0
.
Dies geschieht mit den folgenden Befehlen:
composer install parsecsv/php-parsecsv
Dadurch wird die Version 0.1.4
installiert, wie in der Sperrdatei angegeben
composer update parsecsv/php-parsecsv
Dadurch wird das Paket auf 0.3.2
aktualisiert. Die höchste Version in Bezug auf Ihren Composer.json. Der Eintrag in composer.lock
wird aktualisiert.
composer require parsecsv/php-parsecsv
Dadurch wird die neueste Version 1.1.0
aktualisiert oder installiert. Ihre composer.lock
-Datei und composer.json
-Datei werden ebenfalls aktualisiert.
Benutz einfach
composer require {package/packagename}
mögen
composer require phpmailer/phpmailer
wenn sich das Paket nicht im Herstellerordner befindet. Installieren Sie es und wenn das Paket ein Composer-Aktualisierungspaket für die letzte Version enthält.
Weil Sie ein bestimmtes Paket installieren wollten "Ich muss nur ein Paket für meine SF2-Distribution (DoctrineFixtures) installieren."
php composer.phar require package/package-name:package-version
würde ausreichen