Forking membuat repositori yang sama sekali baru dari repositori yang ada (cukup melakukan git clone di gitHub / bitbucket)
Garpu paling baik digunakan: ketika maksud 'split' adalah untuk membuat proyek yang independen secara logis, yang mungkin tidak akan pernah bersatu kembali dengan induknya.
Strategi cabang membuat cabang baru di repositori yang ada / berfungsi
Cabang paling baik digunakan: ketika mereka dibuat sebagai tempat sementara untuk bekerja melalui fitur, dengan maksud untuk menggabungkan cabang dengan asal.
Lebih spesifik: -
Dalam proyek open source, pemilik repositori yang memutuskan siapa yang bisa mendorong ke repositori. Namun, gagasan open source adalah bahwa setiap orang dapat berkontribusi pada proyek.
Masalah ini diselesaikan dengan garpu: setiap kali pengembang ingin mengubah sesuatu dalam proyek open source, mereka tidak mengkloning repositori resmi secara langsung. Sebagai gantinya, mereka garpu untuk membuat salinan. Ketika pekerjaan selesai, mereka membuat permintaan tarik sehingga pemilik repositori dapat meninjau perubahan dan memutuskan apakah akan menggabungkannya ke proyeknya.
Pada intinya forking mirip dengan percabangan fitur, tetapi alih-alih membuat cabang, garpu repositori dibuat, dan alih-alih melakukan permintaan penggabungan, Anda membuat permintaan tarik.
Tautan di bawah ini memberikan perbedaan dengan cara yang dijelaskan dengan baik:
https://blog.gitprime.com/the-definitive-guide-to-forks-and-branches-in-git/
https://buddy.works/blog/5-types-of-git-workflows
http://www.continuousagile.com/unblock/branching.html