从首次使用到最终提交:多CI服务采用的演化研究
软件工程
2025-07-29 v1
摘要
持续集成 (CI) 服务,如GitHub Actions和Travis CI,广泛应用于开源开发中以自动化测试和部署。虽然现有研究常单独考察各个服务,但项目如何在多个服务之间进行采纳与迁移仍不清晰。为理解CI采用的演化如何跨越服务边界,我们present了一项初步研究,分析了2008年1月至2024年12月期间托管于GitHub上的18,924个Java项目的历史CI采纳情况,这些项目至少使用了八种CI服务中的一种,即Travis CI、AppVeyor、CircleCI、Azure Pipelines、GitHub Actions、Bitbucket、GitLab CI和Cirrus CI。具体我们研究:(1) CI服务的共同采纳或替换频率;(2) 不同服务下的维护活动差异。我们的分析表明,同一项目中使用多个CI服务的做法是一种常见模式,近五分之一的项目都观察到,常常反映出跨CI服务的迁移。我们的研究是首次实践性地考察多CI采纳的,为未来研究提供了新见解,并凸显了支持服务选择、协调与迁移于演化CI环境中的策略与工具的必要性。
引用
@article{arxiv.2507.20095,
title = {From First Use to Final Commit: Studying the Evolution of Multi-CI Service Adoption},
author = {Nitika Chopra and Taher A. Ghaleb},
journal= {arXiv preprint arXiv:2507.20095},
year = {2025}
}
备注
Accepted at the 41st IEEE International Conference on Software Maintenance and Evolution 2025 (ICSME'25)