中文

基于上下文代码检索的提交消息生成:初步研究

软件工程 2025-07-24 v1

摘要

提交消息描述了提交中主要的代码变更,在软件维护中发挥着关键作用。现有的提交消息生成 (CMG) 方法通常将其建模为直接映射,输入代码 diff,输出简短的描述性句子。然而,我们认为仅依赖代码 diff 是不够的,由于原始代码 diff 未能捕获生成高质量、信息丰富提交消息所需的完整上下文。本文提出了一种基于上下文代码检索的方法 C3Gen,通过从仓库中检索与提交相关的代码片段,并将其纳入模型输入,以提供存储库范围内更丰富的上下文信息。在实验中,我们使用四项客观指标和三项主观指标评估了 C3Gen 在各种模型下的效果。同时,我们设计并进行了人类评估,以调查 C3Gen 生成的提交消息是否被人类开发者看法。结果表明,通过将上下文代码纳入输入,C3Gen 使模型能够有效地利用额外信息,生成更全面、信息丰富且在实际开发场景中更具实用价值的提交消息。进一步的分析还揭示了基于相似性的指标可靠性方面的问题,并为 CMG 提供了实证性见解。

关键词

引用

@article{arxiv.2507.17690,
  title  = {Contextual Code Retrieval for Commit Message Generation: A Preliminary Study},
  author = {Bo Xiong and Linghao Zhang and Chong Wang and Peng Liang},
  journal= {arXiv preprint arXiv:2507.17690},
  year   = {2025}
}

备注

The 19th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)