Perintah-perintah Composer: create-project

Pada materi sebelumnya kita sudah bahas perintah Composer, yaitu : require, kali ini kita akan bahas tentang perintah “composer create-project”.

composer create-project

Perintah ini digunakan untuk membuat sebuah project baru dengan menggunakan source code paket yang kita panggil.

Jadi struktur perintahnya:
composer create-project “nama-paket” “nama-folder” “versi-paket”

Contoh perintah :
composer create-project nesbot/carbon project-saya 1.20.0

Makna perintah :
“Composer, tolong buatkan saya project baru dalam folder project-saya dengan menggunakan source code dari paket nesbot/carbon versi 1.20.0

Pada dasarnya pada perintah ini, Composer melakukan clone source code dari repository paket yang bersangkutan (dari github), dan meng-install seluruh dependensi dari paket tersebut. Sebagai contoh kita ingin membuat project menggunakan source code dari paket nesbot/carbon.

Jika perintah tersebut dieksekusi, maka akan tampil proses seperti gambar ini:

Composer Create Project 01

Nah dari gambar tersebut kita lihat perbedaan yang signifikan antara perintah require dengan create-project. Ternyata dependency paket yang di-download oleh Composer lebih banyak.

Pada perintah ini:

  1. Composer membuat sebuah folder project-saya
  2. Composer meng-install/men-download source code paket nesbot/carbon ke dalam folder project-saya
  3. Composer men-download seluruh dependency dari paket
  4. Composer juga men-download seluruh dependency dari paket yang digunakan saat source code ini dibuat, dalam kasus ini adalah paket “phpunit/phpunit”.

Jika kita tengok di halaman packagist, bisa di lihat pada bagian require-dev di sana kelihatan paket phpunit/phpunit yang menjadi dependency untuk kebutuhan development paket nesbot/carbon

Composer Create Project 02

hmm… oke, Jadi dari sini kita bisa melihat bahwa perintah create-project berguna jika kita ingin menggunakan source code paket sebagai starting point dari project yang akan kita garap. Umumnya perintah create-project ini kita gunakan untuk membuat project dari sebuah framework. Misalkan : symfony, codeigniter, laravel, dan slim.

comments powered by Disqus