Pull-based development has enabled numerous volunteers to contribute to open-source projects with fewer barriers. Nevertheless, a considerable amount of pull requests (PRs) with valid contributions are abandoned by their contributors, wasting the effort and time put in by both the contributors and maintainers. To better understand the underlying dynamics of contributor-abandoned PRs, we conduct a mixed-methods study using both quantitative and qualitative methods. We curate a dataset consisting of 265,325 PRs including 4,450 abandoned ones from ten popular and mature GitHub projects and measure 16 features characterizing PRs, contributors, review processes, and projects. Using statistical and machine learning techniques, we find that complex PRs, novice contributors, and lengthy reviews have a higher probability of abandonment and the rate of PR abandonment fluctuates alongside the projects' maturity or workload. To identify why contributors abandon their PRs, we also manually examine a random sample of 354 abandoned PRs. We observe that the most frequent abandonment reasons are related to the obstacles faced by contributors, followed by the hurdles imposed by maintainers during the review process. Finally, we survey the top core maintainers of the studied projects to understand their perspectives on dealing with PR abandonment and on our findings.
翻译:以拉动为基础的发展使许多志愿者能够以较少的障碍为开放源码项目作出贡献,然而,大量有有效贡献的拉动请求被其捐助者放弃,浪费了捐助者和维护者投入的努力和时间。为了更好地了解捐助者放弃的PR的根本动态,我们使用定量和定性方法进行混合方法研究。我们整理了一个由265 325个PR组成的数据集,其中包括10个广受欢迎的成熟GitHub项目中的4 450个被遗弃的PR,并测量了PR、捐助者、审查进程和项目的16个特点。我们利用统计和机器学习技术发现复杂的PR、新捐助者和冗长的审查有更高的放弃可能性,放弃PR的比率随项目成熟或工作量波动。为了查明捐助者为何放弃其PR,我们还手工检查了354个放弃的PR的随机抽样。我们发现,最经常放弃的原因与捐助者所面临的障碍有关,其次是维护者在审查进程中设置的障碍。最后,我们调查了研究的PR的顶尖维护者,以便了解他们对放弃项目的看法。