Question: What are a number of technical forks of an open source project on code development platforms?
A technical fork is a distributed version control copy of a project. The number of technical forks indicates the number of copies of a project on the same code development platform.
Note: Many times technical fork and clones are used interchangeably, but there is a difference between the two. A technical fork is a copy of a repository on the same platform, whereas a clone is a copy on a local machine.
The objective of the Technical Fork metric is to ascertain how many copies of a project exist on a code development platform. Analysis of technical forks may provide insight into forking intentions (different types of forks such as contributing, and non-contributing forks).
The usage and dissemination of health metrics may lead to privacy violations. Organizations may be exposed to risks. These risks may flow from compliance with the GDPR in the EU, with state law in the US, or with other law. There may also be contractual risks flowing from terms of service for data providers such as GitHub and GitLab. The usage of metrics must be examined for risk and potential data ethics problems. Please see CHAOSS Data Ethics document for additional guidance.
- Time Period (e.g., Weekly, Monthly, Annually)
- Ratio of contributing fork to total forks (A contributing fork is a fork that has opened a change request against the original repository.)
- Ratio of non-contributing fork to total forks (A non-contributing fork is a fork that has never opened a change request against the original repository.)
Tools Providing the Metric
- Github API (https://developer.github.com/v3/repos/forks/#list-forks)
- GitLab API (https://docs.gitlab.com/ee/api/projects.html#list-forks-of-a-project)
- Bitbucket API (https://developer.atlassian.com/cloud/bitbucket/rest/api-group-repositories/#api-repositories-workspace-repo-slug-forks-get)
- Vinod Ahuja
- Sean Goggins
- Matt Germonprez
- Kevin Lumbard
- Dawn Foster
- Elizabeth Barron