Abstract

开源软件项目通常依赖于来自各种开发人员的代码贡献来扩展其软件的功能。项目成员评估这些贡献,并经常参与广泛的讨论,以决定是否整合变更。这些讨论对有关新贡献者的项目管理以及项目需求和方向的演变具有重要意义。我们展示了一个关于开放工作环境中开发人员如何评估和讨论拉请求的研究,这是 GitHub 中一个主要的贡献方法,我们分析了一个关于拉请求的扩展讨论样本以及与 GitHub 开发人员的访谈。我们发现,开发人员围绕提交者试图解决的问题的适当性和实现的解决方案的正确性提出了问题。项目核心成员和第三方利益攸关方都讨论并有时实施了解决这些问题的替代办法。不同的利益攸关方还通过争取不同社区的支持,如附属项目甚至公司,影响评价结果。我们还发现,评估结果可能比单纯的接受或拒绝更复杂。在某些情况下,尽管提交者的贡献被拒绝,但核心团队通过实现替代解决方案实现了提交者的技术目标。我们发现,提交者在项目中的先前交互水平改变了开发人员礼貌地讨论贡献和提出的替代解决方案的性质的方式。