WizardMerge——拯救无线索的合并
软件工程
2024-07-04 v1 新兴技术
编程语言
摘要
现代软件开发需要开发人员之间高效的面向版本的协作。虽然Git是最流行的版本控制系统,但由于基于文本的工作流程,生成的合并结果令人不满意,可能导致项目合并版本中出现意外结果。尽管已提出许多合并工具用于改进合并结果,但开发人员仍在没有线索的情况下解决冲突并修复错误修改的代码。我们提出了WizardMerge,这是一个辅助工具,利用Git的合并结果检索文本和LLVM-IR层面的代码块依赖关系,并为开发人员提供解决文本合并引入的错误的建议。通过评估,我们将WizardMerge用于五个大型项目中的227个冲突。结果表明,WizardMerge降低了冲突合并时间成本,实现了23.85%的减少。除了解决冲突,WizardMerge还为超过70%需要可能受到冲突影响的代码块提供合并建议。值得注意的是,WizardMerge具有识别那些在合并时被Git错误地应用却需要手动干预的与冲突无关的代码块的能力。
引用
@article{arxiv.2407.02818,
title = {WizardMerge -- Save Us From Merging Without Any Clues},
author = {Qingyu Zhang and Junzhe Li and Jiayi Lin and Jie Ding and Lanteng Lin and Chenxiong Qian},
journal= {arXiv preprint arXiv:2407.02818},
year = {2024}
}
备注
22 pages