Forking tạo một kho lưu trữ hoàn toàn mới từ kho lưu trữ hiện có (chỉ cần thực hiện git clone trên gitHub / bitbucket)
Dĩa được sử dụng tốt nhất: khi mục đích của 'chia tách' là tạo ra một dự án độc lập logic, có thể không bao giờ đoàn tụ với cha mẹ của nó.
Chiến lược chi nhánh tạo ra một nhánh mới trên kho lưu trữ hiện có / đang hoạt động
Các nhánh được sử dụng tốt nhất: khi chúng được tạo như là nơi tạm thời để làm việc thông qua một tính năng, với mục đích hợp nhất nhánh với nguồn gốc.
Cụ thể hơn: -
Trong các dự án nguồn mở, chủ sở hữu của kho lưu trữ là người quyết định ai có thể đẩy vào kho lưu trữ. Tuy nhiên, ý tưởng về nguồn mở là mọi người đều có thể đóng góp cho dự án.
Vấn đề này được giải quyết bằng các nhánh: bất cứ khi nào nhà phát triển muốn thay đổi thứ gì đó trong dự án nguồn mở, họ sẽ không sao chép trực tiếp kho lưu trữ chính thức. Thay vào đó, họ fork nó để tạo một bản sao. Khi công việc kết thúc, họ đưa ra yêu cầu kéo để chủ sở hữu kho lưu trữ có thể xem xét các thay đổi và quyết định có hợp nhất chúng với dự án của mình không.
Tại cốt lõi của nó tương tự như phân nhánh tính năng, nhưng thay vì tạo các nhánh, một nhánh của kho lưu trữ được thực hiện và thay vì thực hiện một yêu cầu hợp nhất, bạn tạo một yêu cầu kéo.
Các liên kết dưới đây cung cấp sự khác biệt theo cách được giải thích rõ:
https://blog.gitprime.com/the-definitive-guide-to-fork-and-branches-in-git/
https://buddy.works/blog/5-types-of-git-workflows
http://www.cContuptagile.com/unblock/branching.html