Social Forking in Open Source Software: An Empirical Study.
Kam Hay Fung, Aybüke Aurum, David Yuhua Tang · 2012
Abstract. Forking is the creation of a new software project by making a copy of artefacts from another project. Forking is gaining traction in industry because of the maturity of distributed version control systems and the abundance of open source software (OSS) and hosting platforms that support forking. However, forking in OSS is a poorly understood practice in research, often assumed to be damaging to the open source community. This research aims to explore social forking. It uses a conceptual model for forking centring on three key concepts-forks (i.e. created projects), communities (i.e. groups of forks) and contributions (i.e. changes contributed from a forked project to the project from which its artefacts were copied)- to empirically analyse nine public domain JavaScript development communities in GitHub, a web site for hosting social coding. The analysis examined the relationships of these communities, the nature of forking, and the way in which forking and contributions were used in a social setting.