In software engineering, a project fork happens when developers take a copy of source code from one software package and start independent development on it, creating a distinct and separate piece of software. The term often implies not merely a development branch, but a split in the developer community, a form of schism.
Forking of software has a similar structure of A phylogenetic tree or evolutionary tree.
A speculatively rooted tree for rRNA genes, showing major branches Bacteria, Archaea, and EucaryotaUploaded image
It is a branching diagram or "tree" showing the inferred evolutionary relationships among various biological species or other entities—their phylogeny—based upon similarities and differences in their physical or genetic characteristics. The taxa joined together in the tree are implied to have descended from a common ancestor.