Pernahkah kamu membuat sebuah proyek yang kemudian di upload di Github? Selain bisa upload proyek kamu, Github juga menyediakan fitur clone proyek juga loh! Apasih maksudnya? Istilah mudahnya, kamu dapat mendownload proyek dari Github dan disimpan di dalam local storage kamu. Untuk melakukan proses clone proyek untuk laravel, ada beberapa langkah yang perlu kamu lakukan.
1. Clone / Download proyek yang ingin di simpan di penyimpanan lokal
Ada beberapa langkah yang bisa kamu lakukan untuk melakukan clone proyek dari github. Sebelum melakukan proyek, pastikan kamu telah membuka repository proyek yang ingin kamu clone. Kemudian, kamu dapat menekan tombol dropdown berwarna hijau yang bertuliskan <> code
. Lalu, akan muncul beberapa opsi yang dapat kamu lakukan seperti melalui SSH, ZIP, dan lainnya. Untuk saat ini, saya akan memberikan penjelasan langkahnya melalui HTTPS.
Kamu dapat salin link tersebut melalui tombol salin di sampingnya. Setelah selesai men-salin link tersebut, kamu dapat membuka Visual Studio Code kamu. Pastikan kamu berada di halaman utama atau tidak membuka proyek apapun. Apabila Visual Studio Code telah terbuka, arahkan kursor menuju tombol Clone Git Repository...
dan tekan tombol tersebut. Kemudian, setelah tombol ditekan, akan muncul sebuat popup pada bagaian atas Visual Studio Code seperti berikut.
Masukkan link yang telah kamu salin ke dalam kolom tersebut dan dilanjutkan dengan menekan tombol enter pada keyboard kamu. Kemudian, kamu akan diminta untuk memilih tempat untuk menyimpan proyek tersebut. Setelah memilih tempat dan menekan tombol ok, Visual Studio Code akan memulai proses instalasi proyek tersebut.
Install Dependensi
Sebelum melakukan instalasi, pastikan kamu telah memiliki Composer dengan melakukan composer -v
pada terminal / cmd kamu. Apabila kamu belum memilikinya, install Composer terlebih dahulu melalui https://getcomposer.org/download/. Apabila sudah memiliki Composer, kamu dapat melakukan instalasi dependensi. Pastikan kamu telah masuk kedalah folder proyek tersebut.
Ketikkan composer update
pada terminal tersebut untuk melakukan instalasi. Dependensi ini berarti kumpulan Library yang berarti akan melakukan instalasi terhadap seluruh Library dari proyek tersebut. Proses ini membutuhkan internet yang baik. Apabila internet yang kamu miliki tidak begitu baik, beberapa Library mungkin akan gagal di install dan mungkin akan terjadi error dikarenakan Library yang tidak lengkap.
Mengatur Environment Variable
Selesai melakukan instalasi, kamu dapat mulai mengatur Environment Variable. Ketika developer upload proyek Laravel ke dalam Github, secara otomatis sistem akan melakukan proteksi pada file .env
yang mana file tersebut tidak akan di simpan di Github. File .env
ini bersifat sensitif yang mana, apabila file tersebut di simpan di Github maka akan berpostensi terekspos. Mengapa disebutkan bahwa file ini sensitif? Karena berisikan sesuatu yang bersifat rahasia seperti kunci API, kata sandi, dan sebagainya. Maka, ketika kamu melakukan clone sebuah proyek, file .env
ini tidak dapat ditemukan. Sehingga, kamu harus membuat file tersebut agar proyek tersebut dapat kamu jalankan.
Agar kamu memiliki file tersebut, kamu dapat menuliskan cp .env.example .env
pada terminal kamu. Laravel secara otomatis akan membuatkan sebuah file .env
untuk kamu dan dapat kamu setting file tersebut. Setelah file .env
terbuat, kamu dapat menuliskan php artisan key:generate
pada terminal kamu. Laravel secara otomatis akan membuatkan sebuah key untuk proyek kamu.
Setelah itu, kamu dapat mengatur nama database proyek tersebut, username, dan sebagainya.
Migrate & Running
Setelah mengatur Environment Variable, kamu dapat melakukan Migrate dan dilanjutkan dengan mencoba Running proyek tersebut. Apabila tidak terdapat error yang dihasilkan, maka kamu telah berhasil melakukan clone proyek tersebut.
Seperti itulah langkah-langkah untuk melakukan clone Laravel Project yang dapat kamu terapkan. Mudah bukan?
Referensi :
– https://medium.com/angkringan/cara-clone-project-laravel-dari-git-bb2dd403dde3
– https://github.com/orgs/community/discussions/47776