【24h】

Scalable Software Merging Studies with MERGANSER

机译:使用Merganser的可扩展软件合并研究

获取原文

摘要

Software merging researchers constantly need empirical data of real-world merge scenarios to analyze. Such data is currently extracted through individual and isolated efforts, often with non-systematically designed scripts that may not easily scale to large studies. This hinders replication and proper comparison of results. In this paper, we introduce MERGANSER, a scalable and easy-to-use tool for extracting and analyzing merge scenarios in Git repositories. In addition to extracting basic information about merge scenarios from Git history, our tool also replays each merge to detect conflicts and stores the corresponding information of conflicting files and regions. We design a normalized and extensible SQL data schema to store the information of the analyzed repositories, merge scenarios and involved commits, and merge replays and conflicts. By running only one command, our proposed tool clones the target repositories, detects their merge scenarios, and stores their information in a SQL database. MERGANSER is written in Python and released under the MIT license. In this tool paper, we describe MERGANSER's architecture and provide guidance for its usage in practice.
机译:软件合并研究人员不断需要实证数据的实证数据进行分析。这些数据目前通过个人和孤立的工作提取,通常具有非系统设计的脚本,可能不易扩展到大型研究。这种阻碍了结果和正确比较结果。在本文中,我们介绍了Merganser,可扩展且易于使用的工具,用于提取和分析Git存储库中的合并方案。除了从Git历史记录中提取有关合并方案的基本信息外,我们的工具还重放每个合并以检测冲突并存储冲突文件和区域的相应信息。我们设计了归一化和可扩展的SQL数据架构,以存储分析的存储库,合并方案和涉及的提交的信息,并合并重放和冲突。通过仅运行一个命令,我们提出的工具克隆目标存储库,检测其合并方案,并将其信息存储在SQL数据库中。 Merganser是用Python编写的,并在麻省理工学院许可证下发布。在这个工具纸中,我们描述了Merganser的架构,并为其在实践中提供了指导。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号