Saya hanya perlu menginstal 1 paket untuk distribusi SF2 saya (DoctrineFixtures).
Ketika saya berlari
php composer.phar update
saya mendapat
- 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
Tampaknya pengembang terakhir mengedit banyak file di dalam vendor.
Untuk menyiasati ini, saya mencoba
php composer.phar update <package_name>
Tapi itu sepertinya tidak berhasil. Bagaimana saya bisa memperbarui / menginstal hanya satu perpustakaan dari composer.json?
symfony
composer-php
Alat
sumber
sumber
composer.json
?Jawaban:
Untuk menginstal
doctrine/doctrine-fixtures-bundle
dengan versi2.1.*
dan stabilitas minimum@dev
gunakan ini:kemudian perbarui hanya paket tunggal ini:
sumber
require
sebelum atau sebelumnya diunduh sebagai dependensi - akan secara otomatis diperbarui ketika menjalankancomposer require <package>:<version-constraint>@<stability-flag>
perintah?Jika Anda hanya ingin memperbarui beberapa paket dan tidak semua, Anda dapat mencantumkannya sebagai berikut:
Anda juga dapat menggunakan wildcard untuk memperbarui banyak paket sekaligus:
source
saat tersedia.dist
saat tersedia.php
,hhvm
,lib-*
danext-*
persyaratan dan memaksa instalasi bahkan jika mesin lokal tidak memenuhi ini. Lihat jugaplatform
opsi konfigurasi .require-dev
(ini adalah perilaku default).require-dev
. Generasi autoloader mengabaikanautoload-dev
aturan.--prefer-stable
.sumber
vendor/*
tanda kutip mereka :composer update "vendor/*"
Perbedaan antara menginstal, memperbarui dan membutuhkan
Asumsikan skenario berikut:
composer.json
file composer.lock
Install:
composer install parsecsv/php-parsecsv
Ini akan menginstal versi
0.1.4
seperti yang ditentukan dalam file kuncimemperbarui:
composer update parsecsv/php-parsecsv
Ini akan memperbarui paket ke
0.3.2
. Versi tertinggi sehubungan dengan composer.json Anda. Entricomposer.lock
akan diperbarui.memerlukan:
composer require parsecsv/php-parsecsv
Ini akan memperbarui atau menginstal versi terbaru
1.1.0
. Andacomposer.lock
berkas dancomposer.json
file akan diperbarui juga.sumber
composer update author/package
dan kemudiancomposer install author/package
composer update package
sudah cukup, tidak perlu memanggil instal setelahnyaupvoted
Anda pada dasarnya dapat melakukan yang berikut untuk menginstal paket baru juga.
maka terminal akan meminta Anda untuk memasukkan nama paket untuk pencarian.
Kemudian terminal akan menanyakan versi paket (Jika Anda ingin versi terbaru biarkan kosong)
Kemudian Anda cukup menekan tombol kembali. Terminal akan meminta paket lain, jika Anda tidak ingin menginstal yang lain cukup tekan tombol kembali dan Anda akan selesai.
sumber
Anda dapat menggunakan perintah berikut untuk memperbarui modul apa pun dengan dependensinya
sumber
Untuk memastikan bahwa komposer memperbarui satu paket yang sudah diinstal ke versi terakhir dalam batasan versi yang Anda atur di composer.json hapus paket dari vendor dan kemudian jalankan:
sumber
Gunakan saja
Suka
jika paket tidak ada dalam folder vendor .. komposer memasangnya dan jika paket ada paket pembaruan komposer ke versi terakhir.
sumber
Karena Anda ingin menginstal paket tertentu "Saya hanya perlu menginstal 1 paket untuk distribusi SF2 saya (DoctrineFixtures)."
php composer.phar require package/package-name:package-version
akan cukupsumber