Forking Without Clicking: on How to Identify Software Repository Forks

11/16/2020
by   Antoine Pietri, et al.
0

The notion of software ”fork” has been shifting over time from the (negative) phenomenon of community disagreements that result in the creation of separate development lines and ultimately software products, to the (positive) practice of using distributed version control system (VCS) repositories to collaboratively improve a single product without stepping on each others toes. In both cases the VCS repositories participating in a fork share parts of a common development history. Studies of software forks generally rely on hosting platform metadata, such as GitHub, as the source of truth for what constitutes a fork. These ”forge forks” however can only identify as forks repositories that have been created on the platform, e.g., by clicking a ”fork” button on the platform user interface. The increased diversity in code hosting platforms (e.g., GitLab) and the habits of significant development communities (e.g., the Linux kernel, which is not primarily hosted on any single platform) call into question the reliability of trusting code hosting platforms to identify forks. Doing so might introduce selection and methodological biases in empirical studies. In this article we explore various definitions of ”software forks”, trying to capture forking workflows that exist in the real world. We quantify the differences in how many repositories would be identified as forks on GitHub according to the various definitions, confirming that a significant number could be overlooked by only considering forge forks. We study the structure and size of fork networks , observing how they are affected by the proposed definitions and discuss the potential impact on empirical research.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/17/2020

An Exploratory Study to Find Motives Behind Cross-platform Forks from Software Heritage Dataset

The fork-based development mechanism provides the flexibility and the un...
research
07/27/2023

On the Suitability of Hugging Face Hub for Empirical Studies

Background. The development of empirical studies in software engineering...
research
11/03/2021

Recommendations to clarify NASA open source requirements

The software community has specific definitions for terms such as "open ...
research
03/18/2021

Please Don't Go – Increasing Women's Participation in Open Source Software

Women represent less than 24 from various types of prejudice and biases....
research
07/26/2023

It's Not Just GitHub: Identifying Data and Software Sources Included in Publications

Paper publications are no longer the only form of research product. Due ...
research
03/31/2022

Bot Detection in GitHub Repositories

Contemporary social coding platforms like GitHub promote collaborative d...
research
09/03/2020

Evaluation of Software Product Quality Metrics

Computing devices and associated software govern everyday life, and form...

Please sign up or login with your details

Forgot password? Click here to reset