Coming:一种从 Git 提交中挖掘变更模式实例的工具
软件工程
2019-06-11 v1
摘要
诸如 Git 之类的软件仓库已成为软件工程研究人员的重要信息来源。例如,检测满足给定标准(如缺陷修复提交)的提交是理解软件演化的最常见任务之一。然而,据我们所知,目前还没有开源工具能够在给定 Git 仓库时返回某一给定变更模式的所有实例。在本文中,我们提出 Coming,这是一种以 Git 仓库为输入并在每次提交中挖掘变更模式实例的工具。为此,Coming 计算两个连续版本之间的细粒度变更,分析这些变更以检测其是否对应于某一变更模式的实例(由用户使用 XML 指定),最后在分析所有提交后,给出 a) 代码变更的频率以及 b) 在各次提交中发现的实例。我们在来自 Defects4J 的一组 28 对版本上对 Coming 进行了评估,在其中 26 对上发现了涉及 If 条件的变更模式实例。
引用
@article{arxiv.1810.08532,
title = {Coming: a Tool for Mining Change Pattern Instances from Git Commits},
author = {Matias Martinez and Martin Monperrus},
journal= {arXiv preprint arXiv:1810.08532},
year = {2019}
}