Composer adalah dependency manager yang sangat penting bagi developer PHP. Meskipun terlihat sederhana, ada banyak fitur dan trik yang sering terlewatkan. Berikut adalah 10 tips dan trik Composer yang akan membuat pengelolaan proyek Anda lebih efektif:
1. Gunakan
1
composer init
untuk Memulai Proyek Baru dengan Cepat
1 | composer init |
Daripada membuat file
1 | composer.json |
secara manual, gunakan perintah berikut:
Perintah ini akan memandu Anda untuk membuat file
1 | composer.json |
dengan detail proyek, seperti nama, deskripsi, lisensi, dan dependensi.
2. Instal Versi Spesifik Library
Saat menambahkan dependensi, Anda bisa menentukan versi tertentu:
Ini berguna untuk menghindari konflik versi saat menggunakan library tertentu.
3. Gunakan Opsi
1
--dev
untuk Dependensi Pengembangan
1 | --dev |
Pisahkan dependensi pengembangan (seperti PHPUnit atau PHPStan) menggunakan flag
1 | --dev |
:
Dependensi ini tidak akan diinstal di lingkungan produksi jika Anda menjalankan perintah seperti
1 | composer install --no-dev |
.
4. Optimalkan Autoloader untuk Produksi
Sebelum deploy, jalankan perintah berikut untuk mengoptimalkan autoloader:
Ini akan meningkatkan performa dengan membuat class map statis untuk semua file.
5. Perbarui Hanya Library Tertentu
Alih-alih memperbarui semua dependensi, Anda bisa memperbarui library tertentu saja:
Ini menjaga stabilitas proyek Anda.
6. Cek Versi Paket yang Tersedia dengan
1
show
1 | show |
Untuk melihat informasi library yang telah diinstal:
Untuk melihat semua versi yang tersedia dari library tertentu:
7. Simpan Cache Composer untuk Instalasi Cepat
Composer menyimpan cache dependensi untuk mempercepat instalasi berikutnya. Anda bisa melihat lokasi cache dengan:
Dan untuk membersihkan cache:
8. Gunakan
1
composer scripts
untuk Automasi Tugas
1 | composer scripts |
Tambahkan skrip khusus di file
1 | composer.json |
untuk tugas berulang:
Jalankan skrip tersebut dengan:
9. Gunakan Opsi
1
--prefer-dist
untuk Instalasi Cepat
1 | --prefer-dist |
Jika memungkinkan, Composer akan mengunduh file arsip (zip) daripada mengkloning repository, mempercepat proses instalasi:
10. Perbaiki Konflik Dependensi dengan
1
why
dan
1
why-not
1 | why |
1 | why-not |
Jika ada konflik dependensi, gunakan:
atau
Ini membantu Anda memahami apa yang menyebabkan konflik dan bagaimana memperbaikinya.