
Beda Izin, Beda Cara Ambil Kode
Jika kamu bekerja di perusahaan dan atasanmu memberikan akses langsung ke Repository perusahaan di GitHub, kamu cukup menggunakan perintah Git Clone. Kamu mengunduh kodenya, bekerja di cabang baru, dan mendorongnya kembali (Git Push) tanpa masalah.
TAPI, apa yang terjadi jika kamu ingin mengedit atau memperbaiki bug di project raksasa milik Facebook (seperti React) atau project milik orang tak dikenal? Kamu TIDAK DIBERI izin (Write Access) untuk mem-push perubahan ke sana. Di sinilah kamu harus melakukan Git Fork terlebih dahulu.
Apa itu Git Fork?
Berbeda dengan *Clone* yang mengunduh data ke Laptopmu (Lokal), *Fork* adalah fitur khusus di dalam *Website* GitHub (Cloud).
Ketika kamu mengklik tombol "Fork" di pojok kanan atas repository orang lain, GitHub akan meng-copy (menduplikasi) 100% repository tersebut, lalu meletakkan salinannya ke dalam akun GitHub pribadimu.
Misalnya, repository aslinya adalah github.com/Facebook/React. Setelah di-Fork, kamu kini memiliki repository kloningan bernama github.com/AkunKamu/React.
Alur Kerja (Workflow) Forking yang Benar
Lalu, bagaimana cara kamu menyetorkan hasil *coding*-mu agar diterima oleh pemilik aslinya? Ikuti siklus ini:
- Fork di Web: Klik tombol *Fork* di repository target agar kodenya masuk ke akun GitHub pribadimu.
- Clone ke Laptop: Lakukan
git clonepada URL repository milikmu sendiri (hasil *fork* tadi), bukan URL pemilik aslinya! - Kerjakan Perubahan: Buka VS Code, buat branch baru, selesaikan coding-mu (memperbaiki bug), lalu lakukan
git commit. - Push ke Akunmu: Ketik
git push. Kodemu akan meluncur ke repository kloningan di akun GitHub pribadimu. - Buka Pull Request (PR): Pergi ke halaman GitHub, klik tombol Compare & Pull Request. Di tahap ini, kamu "Mengetuk Pintu" sang pemilik kode asli: "Halo tim Facebook, saya sudah memperbaiki bug A di salinan saya. Apakah kalian mau menggabungkannya ke project utama kalian?"
Kesimpulan
Singkatnya: Clone digunakan untuk meng-copy kode dari internet ke *Hard Disk Laptopmu*. Sedangkan Fork digunakan untuk meng-copy kode milik orang asing (dari satu akun cloud ke akun cloud lainnya) di dunia maya, agar kamu bisa memodifikasinya tanpa merusak *project* si pemilik asli.
Mau langsung pakai template?
Jelajahi template gratis dan premium di TampilKit untuk mempercepat proses development project kamu.
Browse Templates