A bifurcação cria um repositório totalmente novo a partir do repositório existente (simplesmente executando o git clone no gitHub / bitbucket)
Os garfos são mais bem utilizados: quando a intenção da 'divisão' é criar um projeto logicamente independente, que pode nunca se reunir com seu pai.
A estratégia de ramificação cria uma nova ramificação sobre o repositório existente / em funcionamento
As ramificações são mais usadas: quando são criadas como locais temporários para trabalhar com um recurso, com a intenção de mesclar a ramificação com a origem.
Mais específico: -
Nos projetos de código aberto, é o proprietário do repositório quem decide quem pode enviar por push para o repositório. No entanto, a ideia do código aberto é que todos possam contribuir com o projeto.
Esse problema é resolvido por garfos: sempre que um desenvolvedor deseja alterar algo em um projeto de código aberto, ele não clona o repositório oficial diretamente. Em vez disso, eles o bifurcam para criar uma cópia. Quando o trabalho é concluído, eles fazem uma solicitação de recebimento para que o proprietário do repositório possa revisar as alterações e decidir se as mesclará ao seu projeto.
Em sua essência, a bifurcação é semelhante à ramificação de recursos, mas, em vez de criar ramificações, é feita uma bifurcação do repositório e, em vez de fazer uma solicitação de mesclagem, você cria uma solicitação de recebimento.
Os links abaixo fornecem a diferença de uma maneira bem explicada:
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