Does Code Quality Affect Pull Request Acceptance? An empirical study
背景拉取请求是贡献和审查贡献的常见做法,在开源和工业环境中都有使用。代码审查的主要目标之一是发现代码中的缺陷,允许项目维护人员轻松地将外部贡献集成到项目中并讨论代码贡献。Objective.本文的目标是了解在接受拉取请求时是否真正考虑了代码质量。具体来说,我们的目标是了解代码质量问题,如代码气味,反模式,并在拉请求代码的编码风格违规影响其接受的机会时,由项目的维护者审查。法我们在28个Java开源项目中进行了案例研究,分析了36 K拉取请求中存在的4.7 M代码质量问题。我们通过应用逻辑回归和七种机器学习技术(决策树、随机森林、极端随机树、AdaBoost、梯度提升、XGBoost)进一步分析了相关性。结果出乎意料的是,代码质量根本不会影响pull请求的接受。正如其他作品所建议的那样,在接受拉取请求方面,其他因素,如维护者的声誉和所交付功能的重要性,可能比代码质量更重要。结论.研究人员已经调查了开发人员的声誉和拉取请求接受的影响。这是第一个调查pull request中的代码质量是否影响pull request的接受的工作。我们建议研究人员进一步研究这一主题,以了解不同的措施或不同的工具是否可以提供一些有用的措施。
2019-08-25 cs.SE
Testability Refactoring in Pull Requests: Patterns and Trends
要创建单元测试,可能需要重构产品代码,例如通过扩展对特定方法的访问或通过将类分解为更小的单元,这些单元更容易独立测试。我们报告了一项广泛的研究,以了解这种复合重构程序的目的,提高可测试性。我们收集并研究了来自621个GitHub项目的346,841个Java Pull请求。首先,我们比较了两个群体中的原子重构:具有更改的测试对的拉取请求(即,生产和测试代码中的共同更改,因此可能包括可测试性重构)和没有测试对的拉取请求。我们在测试对拉取请求中发现了更多的原子重构,例如更改变量类型操作或更改参数类型。其次,我们手动分析了200个拉取请求的代码更改,其中开发人员明确提到了术语“可测试性”或“重构+测试”。我们确定了10个复合重构过程,以达到可测试性的目的,我们称之为可测试性重构模式。第三,我们手动分析了另外524个测试对拉取请求:都是随机选择的,我们假设在其中找到可测试性重构,例如在关于依赖或并发问题的拉取请求中。在所有分析的拉取请求中,大约有25%实际上包含了可测试性重构模式。最常见的是提取一个方法用于覆盖或调用,扩大对方法的访问以进行调用,以及提取一个类以进行调用。我们还报告了与模式同时发生的频繁原子重构,并讨论了我们的研究结果对研究、实践和教育的影响
2023-03-24 cs.SE
Ecosystem-wide influences on pull request decisions: insights from NPM
本研究通过分析NPM生态系统中180万拉取请求,发现生态系统范围因素(如跨项目经验)显著影响拉取请求接受决策,结合这些因素预测结果F1达0.92,并识别出开发者涉及生态系统的具体原因。
2025-03-10 cs.SE
Let's Make Every Pull Request Meaningful: An Empirical Analysis of Developer and Agentic Pull Requests
Nara Institute of Science and Technology(奈良先端科学技术大学院大学);Kyushu University(九州大学);Ritsumeikan University(立命馆大学);University of Calgary(卡尔加里大学)
本研究通过分析40,214个PRs,发现提交者属性对合并结果影响最大,审查相关特征在人类和代理PRs中效果相反,揭示了人机协作提升PR质量的途径。
2026-01-26 cs.SE
Who Said CVE? How Vulnerability Identifiers Are Mentioned by Humans, Bots, and Agents in Pull Requests
Radboud University(拉德堡德大学);Singapore Management University(新加坡管理大学)
本文研究了人类、机器人和智能体在GitHub拉取请求中提及漏洞标识符的方式,发现机器人占多数提及,而人类和智能体则更广泛地用于修复和讨论。
2026-01-27 cs.SE
The Quiet Contributions: Insights into AI-Generated Silent Pull Requests
Idaho State University(爱达荷州立大学)
研究首次分析了AI生成的静默拉取请求对代码质量和安全的影响,揭示其接受或拒绝的潜在原因。
2026-01-28 cs.SE
Replication Can Improve Prior Results: A GitHub Study of Pull Request Acceptance
众包和数据采掘可以用来有效地减少与部分复制和增强定性研究相关的工作。例如,在一项初步研究中,其他研究人员通过对20个拉取请求进行广泛的定性分析,探讨了影响GitHub拉取请求命运的因素。在他们的研究结果的指导下,我们将他们的一些定性见解映射到定量问题上。为了确定他们的研究结果的普遍性,我们收集了更多的数据(来自142个GitHub项目的170个额外的pull请求)。使用众包,这些数据被主观定性的人类意见所增强,这些意见是关于拉取请求如何扩展原始问题的。然后将人群的回答与定量特征结合起来,并使用数据采掘来构建一个预测器,以预测代码是否会被合并。该预测因子比从主要研究的定性因素(F1=90 vs 68\%)建立的预测因子更准确,说明了混合方法方法和复制对改善先前结果的价值。为了测试这种方法的通用性,未来工作的下一步是进行其他研究,扩展与众包和数据采掘的定性研究。
2019-02-09 cs.SE
Do Autonomous Agents Contribute Test Code? A Study of Tests in Agentic Pull Requests
研究分析了代理拉取请求中测试代码的出现频率及影响因素,揭示了测试代码对PR规模和处理时间的影响,为自主软件开发研究提供实证依据。
2026-01-07 cs.SE
An Empirical Investigation of Pull Requests in Partially Distributed BizDevOps Teams
在全球分布的项目中,虚拟团队通常是部分分散的。一种常见的设置是,来自一家公司的多名成员与位于另一个国家的大型外包供应商合作。此外,流行的BizDevOps概念的引入增加了跨部门合作的必要性,并减少了业务战略和技术开发之间古老的脱节。在部分分布式的BizDevOps团队中建立良好的协作需要广泛的协作和通信技术。如今,一种常见的方法是依靠通过拉取请求和Slack上的频繁通信进行协作。为了调查分布式团队中拉取请求的障碍,我们研究了位于斯堪的纳维亚半岛的一个组织,其中跨职能的BizDevOps团队与印度的非现场团队成员合作。通过进行14次访谈、与团队一起观察23天以及观察37次会议收集了数据。我们发现拉取请求方法在本地工作得很好,但在跨站点工作得不好。我们发现了一些障碍,比如领域复杂性、不同的敏捷流程(时间框与基于流的开发)以及员工流动。使用我们的研究结果的智力资本镜头,我们讨论的障碍和积极和消极的影响,成功的拉请求的方法。
2021-12-03 cs.SE
PR-SZZ: How pull requests can support the tracing of defects in software repositories
SZZ算法代表了一种标准的方法来识别bug修复提交以及诱导对应提交。它构成了许多实证研究中使用的数据集的基础。自创建以来,已提出多个扩展以提高其性能。由于历史原因,相关的工作依赖于提交消息来将错误票据映射到可能相关的代码,而没有额外的数据用于跟踪这些修复引起的提交。因此,我们提出了一个更新版本的SZZ利用拉请求,这是广泛采用的今天。我们评估我们的方法相比,现有的SZZ变种进行实验和分析使用的拉请求,内部提交,合并策略。我们的结果基于6个开源项目,超过50k提交和35k拉取请求。关于bug修复提交,平均18%的bug票据可以额外映射到修复提交,导致整体F分数为0.75,提高了40个百分点。通过选择诱导提交,我们设法减少了误报,并与现有方法相比平均提高了16个百分点的精度。
2022-06-20 cs.SE
PatchTrack: A Comprehensive Analysis of ChatGPT's Influence on Pull Request Outcomes
University of Nevada Las Vegas(内华达大学拉斯维加斯分校)
研究分析了338个包含ChatGPT使用的拉取请求,发现ChatGPT生成的代码被完全采用的比例仅为25%,开发者通常将AI输出作为起点进行调整和迭代,影响不仅限于代码生成,还涉及协作流程中的决策过程。
2026-04-04 cs.SE
Not One to Rule Them All: Mining Meaningful Code Review Orders From GitHub
本研究通过分析GitHub上100个热门仓库的23241个拉取请求的审查评论,发现近半数审查采用非字母顺序,存在最大差异优先等多种有意义顺序,且非字母顺序审查的文件审查率更高、批准数略少,凸显了为大型拉取请求审查提供额外支持的必要性。
2025-06-12 cs.SE
Topic-based Integrator Matching for Pull Request
Pull Request(PR)是GitHub中外部贡献者贡献代码的主要方法。PR审查是开源软件开发的重要组成部分,以保持软件的质量。将新的PR与适当的集成商匹配将使PR审查更加有效。然而,PR和集成商匹配现在在GitHub中手动组织。为了使这个过程更有效,我们提出了一个基于主题的集成匹配算法(TIMA)预测高度相关的合作者(核心开发人员)作为集成到传入的PR。TIMA充分利用了PR的文本语义。为了定义主题与合作者之间的关系,TIMA建立了主题与合作者之间的关系矩阵。根据主题与合作者之间的相关性,TIMA匹配合适的合作者作为PR集成器。
2017-10-28 cs.SE
Identifying bot activity in GitHub pull request and issue comments
开发机器人在Github上用于自动化重复性活动。这些机器人通过问题评论和拉取请求评论与人类演员进行通信。识别这些机器人评论可以防止与软件开发相关的社会技术研究中的偏见。为了自动识别它们,我们提出了一个基于自然语言处理的分类模型。从19,282个PR和问题评论的平衡地面事实数据集开始,我们使用词袋和TF-IDF技术的组合将评论编码为向量。我们训练了一系列的二进制分类器,以预测基于此向量表示的评论类型(人类或机器人)。多项朴素贝叶斯分类器提供最佳结果。它在包含50%数据的测试集上的性能达到了0.88的平均精度,召回率和F1得分。尽管该模型在pull request和issue comments上显示了有希望的结果,但需要进一步的工作来将该模型推广到其他类型的活动,如提交消息和代码审查。
2021-03-10 cs.SE
Quality Gatekeepers: Investigating the Effects ofCode Review Bots on Pull Request Activities
该研究结合 GitHub 1,194 个项目的断点回归分析与 12 名从业者访谈,揭示代码审查机器人对 PR 合并、未合并数量及开发者沟通的影响。
2022-03-30 cs.SE
On the Use of Agentic Coding: An Empirical Study of Pull Requests on GitHub
Nara Institute of Science and Technology(奈良先端科学技术大学院大学);Queen’s University(女王大学)
本文研究了GitHub上代理编码生成的拉取请求的接受情况,发现83.8%的PR被合并,其中54.9%无需修改,剩余需人类修订。
2026-02-09 cs.SE
How Do Agentic AI Systems Address Performance Optimizations? A BERTopic-Based Analysis of Pull Requests
University of Manitoba(曼尼托巴大学);University of Windsor(温莎大学)
本文通过BERTopic分析,揭示了代理AI系统在软件开发中处理性能优化的方式及影响因素。
2025-12-31 cs.SE
How Do Developers Use Code Suggestions in Pull Request Reviews?
本文通过对 46 个 GitHub 项目的实证研究和开发者调查,揭示了代码评审建议的四种类型、使用频率及其对合并率、解决时间和代码复杂度的影响,并发现建议更常用于新手提交者,具有知识共享工具的潜力。
2025-02-07 cs.SE
What Developers Ask to ChatGPT in GitHub Pull Requests? an Exploratory Study
本研究通过手动评估GitHub已合并PR中的155个ChatGPT分享链接,归类出14种请求类型,发现代码审查、代码片段实现等请求常见,且代码生成类提示词交互次数多于文本审查类,填补了开发者与ChatGPT代码贡献交互理解的空白。
2025-08-23 cs.SE
Bots Don't Mind Waiting, Do They? Comparing the Interaction With Automatically and Manually Created Pull Requests
作为一个开源软件项目的维护者,你通常会对以拉取请求的形式提供的贡献感到高兴,因为这会使项目向前迈进一步。过去的研究表明,在审查拉取请求时,不仅要考虑其内容,还要考虑贡献者的社会特征。因此,是否接受捐款以及需要多长时间不仅取决于捐款的内容。然而,到目前为止,我们只有迹象表明,来自机器人的拉取请求可能会优先级较低,即使机器人是由开发团队显式部署的,并且被认为是有用的。机器人研究和开发社区的一个目标是设计有用的机器人,以各种方式有效地支持软件开发。为了更接近这个目标,在这个GitHub挖掘研究中,我们研究了维护者如何与人类手动创建的拉取请求进行交互,与机器人自动创建的拉取请求进行交互的可衡量差异。目前,GitHub上大约三分之一的拉取请求来自机器人。虽然来自人类的拉取请求在72.53%的情况下被接受和合并,但这只适用于37.38%的机器人拉取请求。此外,与机器人拉取请求进行交互并将其合并所需的时间要长得多,即使它们平均包含的更改比人工拉取请求少。这些结果表明,机器人尚未充分发挥其潜力。
2021-03-05 cs.HC cs.SE
Interpersonal Trust in OSS: Exploring Dimensions of Trust in GitHub Pull Requests
本文考察OSS分布式团队中人际信任的可观察维度,并通过分析ASF项目的100个GitHub pull requests,揭示书面沟通中体现信任的线索及其对团队协作的意义。
2023-11-08 cs.SE
Reviewing Beyond the Change: Repository Size and Existing Code Across Agent and Human Pull Requests
University of East London(东伦敦大学)
本研究探究智能体与人类提交请求中,审查者提及变更外现有仓库条目的情况,发现该提及频率随代码文件规模增大而升高,且两类提交请求模式相似,智能体提及仅呈微小可忽略超额。
2026-10-14 cs.SE
How Humans, Bots, and Agents Communicate About Vulnerabilities in Pull Requests
Radboud University(拉德堡德大学);Singapore Management University(新加坡管理大学)
研究拉取请求讨论中人类、机器人和编码代理通过显式标识符和隐式安全语言沟通漏洞的方式,并分析其与代码变更及审查活动的关系。
2026-06-29 cs.CR cs.SE
How AI Coding Agents Communicate: A Study of Pull Request Description Characteristics and Human Review Responses
Nara Institute of Science and Technology(奈良科学技術研究所)
本研究分析了AI编程代理在拉取请求描述风格上的差异及其对人类审查员响应的影响,揭示了人机协作开发中的关键因素。
2026-02-19 cs.AI cs.SE
Together or Apart? Investigating a mediator bot to aggregate bot's comments on pull requests
针对拉取请求中机器人评论造成的信息过载问题,本文设计并评估中介机器人 FunnelBot,并通过25名新人的受试者内研究为降低噪音、支持新人的机器人设计提供依据。
2022-08-08 cs.SE
Nudge: Accelerating Overdue Pull Requests Towards Completion
Microsoft Research(微软研究院);Delft University of Technology(代尔夫特理工大学)
拉取请求是当今协作软件开发和代码审查过程的关键部分。然而,当评审者或作者不积极参与拉取请求时,拉取请求也会减慢软件开发过程。在这项工作中,我们设计了一个端到端的服务,轻推,通过提醒作者或审查者参与他们的逾期拉取请求,加快逾期拉取请求的完成。首先,我们使用基于工作量估计和机器学习的模型来预测给定拉取请求的完成时间。其次,我们使用活动检测来过滤可能过期的拉取请求,但仍然有足够的操作正在进行。最后,我们使用参与者标识来了解拉取请求的拦截者是谁,并轻推适当的参与者(作者或审阅者)。Nudge的主要新颖之处在于,它成功地减少了pull请求的解析时间,同时确保开发人员在数千个存储库的规模上认为发送的通知是有用的。在微软使用的147个存储库的随机试验中,与Nudge没有发送通知的逾期拉取请求相比,Nudge能够将8,500个拉取请求的拉取请求解决时间减少60%。此外,收到Nudge通知的开发人员将73%的通知解决为积极的。当我们将Nudge的部署扩展到微软的8,000个存储库时,我们观察到了类似的结果,Nudge在一整年内发送了210,000个通知。这证明了Nudge扩展到数千个存储库的能力。最后,我们对一系列Nudge通知的定性分析表明了未来研究的领域,例如考虑拉取请求和开发人员可用性之间的依赖关系。
2022-06-17 cs.AI cs.LG cs.PL
How Do Agentic AI Systems Deal With Software Energy Concerns? A Pull Request-Based Study
University of Manitoba(曼尼托巴大学)
本文研究了代理AI系统在生成软件时对能耗问题的意识,通过分析拉取请求发现,尽管构建和运行这些系统耗能高,但生成的软件制品表现出一定的能耗意识,但优化相关的PR因影响可维护性而被接受较少。
2025-12-31 cs.SE
More Than React: Investigating The Role of EmojiReaction in GitHub Pull Requests
背景:开源软件开发变得更加社会化和协作化,特别是随着GitHub等社交编码平台的兴起。自2016年以来,GitHub开始支持更非正式的方法,例如emoji反应,目的是在审查存储库的任何代码更改时减少评论噪音。有趣的是,初步结果表明,表情符号并不总是减少评论噪音(即,20个表情符号反应中有8个),这为开发人员使用表情符号别有用心提供了证据。从审查背景来看,emoji反应在多大程度上促进了更有效的审查过程尚不清楚。目的:在这份注册报告中,我们介绍了研究协议,以调查表情符号反应的别有用心和用法,除了减少GitHub拉取请求(PR)讨论期间的评论噪音。作为报告的一部分,我们首先对表情符号反应是否可以减少PR中的评论噪音进行了初步分析,然后介绍了研究的执行计划。方法:我们将在本研究中使用混合方法,即,定量和定性,有三个假设进行测试。
2021-08-18 cs.SE
A Longitudinal Analysis of Good First Issue Practices and Newcomer Pull Requests in Popular OSS Projects
Nara Institute of Science and Technology(奈良先端科学技术大学院大学);Wakayama University(和歌山大学);The University of Osaka(大阪大学)
研究分析了37个流行GitHub仓库中406826个问题和1117个新成员GFI拉取请求,发现GFI标签比例在2024年后显著下降,但新成员参与度稳定,但拉取请求合并率下降,表明GFI基于的入职机制需持续维护。
2026-06-04 cs.SE
Does Technical Debt Lead to the Rejection of Pull Requests?
技术债是一个术语,用于在软件开发过程中对非最佳解决方案进行分类。这些解决方案会导致一些维护问题,因此应该避免或至少记录下来。虽然有一些研究集中在技术债务的识别,我们专注于技术债务在拉请求的识别。具体来说,我们进行了一项调查,以揭示可能导致拒绝拉取请求的不同类型的技术债务。通过对1,722个拉取请求的分析,我们将技术债分为七类,即设计、文档、测试、构建、项目约定、性能或安全债。我们的研究结果表明,最常见的技术债务类别是设计,占39.34%,其次是测试,占23.70%,项目惯例占15.64%。我们还注意到,技术债务的类型会影响推送请求讨论的大小,例如,担保债务和项目公约债务比其他类型的债务引起更多的讨论。
2016-04-05 cs.SE cs.SI
The Impact of Documentation on Test Engagement in Pull Requests in OSS
Eastern Michigan University(东密歇根大学)
研究探讨了文档对开发者测试行为的影响,引入测试参与率(TER)并发现文档完整性与测试参与呈正相关,为提高测试参与提供了新思路。
2026-04-24 cs.SE
Humans Integrate, Agents Fix: How Agent-Authored Pull Requests Are Referenced in Practice
Concordia University(康考迪亚大学);Tianjin University(天津大学);The University of Osaka(大阪大学)
研究通过分析AIDev数据集中的代理撰写的拉取请求引用,揭示了人类与代理之间引用意图的分类,发现人类主要用于构建新功能,而代理用于修复错误,且引用的拉取请求生命周期更长,审查时间更长。
2026-04-05 cs.SE
How do Developers Improve Code Readability? An Empirical Study of Pull Requests
本研究通过分析109个GitHub仓库中284个合并拉取请求的370项代码可读性改进,构建了26种改进类型的目录,发现SonarQube仅检测到其中26项,凸显了自动静态分析工具规则的改进空间。
2023-09-05 cs.SE
Do Small Code Changes Merge Faster? A Multi-Language Empirical Investigation
代码速度,或代码更改集成到生产环境中的速度,在持续集成和持续部署中起着至关重要的作用。许多研究报告影响代码速度的因素。然而,提高代码速度的解决方案尚不清楚。与此同时,业界继续发布关于“理想”代码更改大小的指导方针,认为它可以提高代码速度,尽管缺乏验证实践的证据。令人惊讶的是,这个基本问题迄今尚未得到研究。本研究探讨了通过优化拉取请求的大小和组成(插入、删除和修改的比例)来提高代码速度的实用性。我们从一个假设开始,即拉请求大小和合并时间之间存在适度的相关性。我们从GitHub上的10种程序设计语言中选择了100个最受欢迎、最活跃的开发项目。我们分析了845,316个pull请求的数据集,包括大小、组成和上下文,以探索其与合并时间的关系-这是衡量代码速度的代理。我们的研究表明,拉请求的大小和组成并不涉及时间合并。无论可能影响拉取请求大小或组成的上下文因素如何(例如,程序设计语言),观察保持。从其他两个平台上拉取请求数据:Gerrit和Phabricator(401,790个代码评审)证实了缺乏关系。这个负面的结果就像“...排除无用的假设“挑战了一个普遍的信念,表明小的代码更改不会更快地合并以提高代码速度。
2022-03-09 cs.SE
Why Are Agentic Pull Requests Merged or Rejected? An Empirical Study
Waseda University(早稻田大学);The University of Osaka(大阪大学);Ritsumeikan University(立命馆大学);Kyushu University(九州大学);Nara Institute of Science and Technology(奈良先端科学技术大学院大学)
本研究通过实证分析探讨代理拉请求数被合并或拒绝的原因,发现仅依赖合并或拒绝结果无法准确反映代理能力,需考虑审查互动过程。
2026-05-21 cs.SE
Does Order Matter? An Empirical Investigation into the Impact of File Ordering on Code Review Effectiveness
University of Saskatchewan(萨斯喀彻温大学)
本研究通过大规模数据挖掘发现,文件排序影响代码评审中的注意力分配,字母顺序并非中立默认设置,并提出改进排序策略以提升评审有效性。
2026-09-22 cs.SE
Pomona: Continuous Code Quality Improvement via Small, Agentic Pull Requests at Bloomberg
University College London(伦敦大学学院);Bloomberg(彭博)
提出Pomona轻量级代理工具,通过扫描和修复技能自动发现并修复代码问题,生成约10行差异的小型PR,经一个月团队部署和10名高级工程师问卷评估,17个PR中15个成功合并,中位关闭时间低于2小时,8/10工程师愿意采用。
2026-08-26 cs.SE
How Successful Are Open Source Contributions From Countries with Different Levels of Human Development?
巴西的开发商是否比他们的同行,比如说英国的开发商更不可能接受他们的贡献?在本文中,我们研究了开发人员的位置是否与拉取请求的结果有关。我们策划了14k贡献者的位置,他们向20个开源项目执行了44k拉取请求。我们的研究结果确实表明,来自人类发展指数(HDI)低的国家的开发人员不仅执行了整体拉取请求的一小部分,而且他们也是最容易被拒绝的人。
2020-12-07 cs.SE
Automatic Generation of Pull Request Descriptions
通过基于拉式的开发模型,开发人员可以通过拉式请求(PR)轻松地为项目做出贡献。在创建PR时,开发人员可以添加自由形式的描述,以描述在此PR中进行了哪些更改和/或更改的原因。这样的描述有助于评审人员和其他开发人员快速了解PR而不触及细节,并可能减少PR被忽略或拒绝的可能性。然而,开发人员有时会忽略为PR编写描述。例如,在我们收集的超过333 K PR的数据集中,超过34%的PR描述是空的。为了缓解这个问题,我们提出了一种方法来自动生成PR描述的基础上提交的消息和添加的源代码评论的PR。我们把这个问题作为一个文本摘要的问题,并解决它使用一种新的序列到序列模型。为了处理软件工件中的词汇表外的单词,并弥合序列到序列模型的训练损失函数与评估度量ROUGE之间的差距,该评估度量已被证明与人类评估相对应,我们集成了指针生成器,并使用强化学习和特殊的损失函数直接优化ROUGE。我们建立了一个超过41 K PR的数据集,并通过ROUGE和人工评估来评估我们在这个数据集上的方法。我们的评估结果表明,我们的方法优于两个基线的显着利润率。
2019-09-16 cs.SE
Code Change Characteristics and Description Alignment: A Comparative Study of Agentic versus Human Pull Requests
Trent University(特伦特大学)
研究比较了代理与人类生成的拉取请求在代码变更特征和描述质量上的差异,发现代理在提交级消息质量上表现更好,但在PR级总结上不如人类,揭示了代理在微观精确性与宏观沟通之间的差距。
2026-01-24 cs.SE
Empirical Analysis of Pull Requests for Google Summer of Code
本研究通过分析GSoC项目期间实习生提交的拉取请求,揭示了开源项目中代码与非代码任务的分布特征及评审反馈内容,为软件工程教育提供实证依据。
2025-01-14 cs.SE
The Value of Effective Pull Request Description
University of Zurich(苏黎世大学);INESC TEC(葡萄牙科技研究所)
研究探讨了PR描述对代码审查的影响,发现目的和代码解释对开发者有帮助,而明确反馈类型预测更改接受度。
2026-02-16 cs.SE
Generative AI for Pull Request Descriptions: Adoption, Impact, and Developer Interventions
本研究采用混合方法考察了18,256个PR,发现GitHub Copilot for PRs的采用率显著上升,能缩短审查时间并提高合并率,且开发者常手动补充AI生成的描述。
2024-02-14 cs.SE
Prompt Quality and Pull Request Outcomes: A Stage-Based Empirical Study of LLM-Assisted Development
University of Nevada Las Vegas(内华达大学拉斯维加斯分校)
通过分析265个开发者与ChatGPT的交互,研究提示结构(上下文、具体性、验证)对LLM辅助开发中代码生成、采纳和集成深度的影响,发现不同维度在不同阶段有不同作用。
2026-06-19 cs.SE
Beyond Bug Fixes: An Empirical Investigation of Post-Merge Code Quality Issues in Agent-Generated Pull Requests
University of Saskatchewan(萨斯喀彻温大学)
本研究通过分析代理生成的bug修复PR合并后代码质量问题,发现代码异味主导,且合并成功不等于代码质量高,需系统化质量检查。
2026-01-27 cs.SE
An Empirical Study on Refactoring-Inducing Pull Requests
背景资料:基于拉式的开发塑造了现代代码审查(MCR)的实践,其中审查者可以通过拉式请求(PR)中的注释和提交来贡献代码改进,例如重构。过去的MCR研究统一对待所有的PR,不管它们是否引起重构。我们将PR定义为重构诱导,即在初始提交后执行重构编辑,这是审阅者之间讨论的结果,也是PR开发人员自发采取的行动。目的:这项混合研究(定量和定性)探讨了代码审查相关的方面,旨在表征重构诱导PR。方法:我们假设,重构诱导PR有不同的特点比非重构诱导的,因此值得特别关注和治疗的研究人员,从业者和工具建设者。为了研究我们的假设,我们从GitHub中挖掘了1,845个Apache合并PR的样本,挖掘了这些PR中的重构编辑,并对重构诱导PR和非重构诱导PR进行了比较研究。我们还手动检查了2,096条评论,并从228个重构诱导PR中检测到1,891个重构。结果如下:我们在我们的样本中发现了30.2%的重构诱导PR,它们在提交数量、代码流失、文件更改数量、审查评论数量、讨论长度和合并时间方面与非重构诱导PR有显著差异。然而,我们没有发现统计证据表明,评论者的数量与重构诱导有关。我们的定性分析显示,至少有一个重构编辑引起的审查133(58.3%)的重构诱导PR检查。结论:我们的研究结果为研究人员,从业者和工具构建者提供了方向,以改善基于拉式代码审查的实践。
2021-08-24 cs.SE
Insights into Security-Related AI-Generated Pull Requests
Idaho State University(爱达荷州立大学);University of Massachusetts Dartmouth(马萨诸塞大学达特茅斯分校)
本文分析了33,000多个AI生成的拉取请求,发现675个与安全相关的提交,揭示了AI生成的拉取请求中常见的安全漏洞及审查结果,发现提交质量对接受度影响有限,扩展了拒绝分类。
2026-04-21 cs.SE
Understanding the Time to First Response In GitHub Pull Requests
本文通过分析 GitHub 上十个热门开源项目的 111,094 个已关闭 PR,研究首次响应时间,发现机器人响应与人类响应在时间上存在显著差异,并揭示了影响首次人类响应等待时间的 PR 特征。
2023-04-17 cs.SE
Plausible Is Not Enough: Trust and Evidence in AI-Authored Pull Request Review
University of Saskatchewan(萨斯喀彻温大学)
该研究调查了239名从业者,发现AIPR审查中审查者初始信任更低、证据要求更高,需关注证据所有权与不确定性,审查工具应公开来源并区分生成内容与人类验证证据。
2026-10-16 cs.SE
Who Pays the Review Cost? Triage, Fairness, and Accountability in AI-authored Pull Requests
University of Saskatchewan(萨斯喀彻温大学)
本研究通过对239名从业者的混合方法调查,明确AI生成拉取请求的审查条件,提出可审查性债务概念,为AIPR治理提供了新视角。
2026-10-09 cs.SE
When AI Teammates Meet Code Review: Collaboration Signals Shaping the Integration of Agent-Authored Pull Requests
Idaho State University USA(爱达荷州立大学)
研究探讨了AI代理提交的拉取请求在代码审查中的整合效果,发现审查员参与和协作信号对整合成功至关重要。
2026-02-23 cs.AI cs.SE
A Study of Library Usage in Agent-Authored Pull Requests
King's College London(伦敦国王学院)
研究探讨了代理生成的拉取请求中图书馆使用情况,发现代理频繁导入图书馆但很少引入新依赖项,且在引入时遵循严格的版本控制实践。
2026-01-27 cs.SE
MELT: Mining Effective Lightweight Transformations from Pull Requests
INESC-ID;Carnegie Mellon University(卡内基梅隆大学);Dickinson College(迪金森学院);Instituto Superior Técnico(高等技术学院);Universidade de Lisboa(里斯本大学);School of Computer Science(计算机学院)
针对开发者API更新效率低易出错的问题,提出MELT方法从开源库拉取请求中挖掘comby格式的轻量级API迁移规则,经泛化提升适用性,实验验证其在真实场景中有效减少警告并修复测试用例。
2024-07-08 cs.AI cs.SE
Analyzing GitHub Issues and Pull Requests in nf-core Pipelines: Insights into nf-core Pipeline Repositories
University of Saskatchewan(萨斯喀彻温大学)
本文通过分析 nf-core 流水线的 GitHub 问题和拉取请求,揭示了开发和维护过程中面临的挑战,如工具开发、仓库维护及 CI 配置管理,并提出提升流水线可持续性和可重复性的方法。
2026-02-10 cs.SE