一句话:提出元维护概念,揭示 GitHub 跨仓库共享文件的不同演化,为复用文件维护提供机会。
本文关注 GitHub 等平台上代码复用与 fork 带来的共享文件维护问题,提出“元维护”(meta-maintenance)概念:追踪同一文件在不同仓库中的演化,以发现可辅助维护的机会。作者从七种编程语言的仓库进行探索性分析,发现多数活跃仓库至少包含一个也存在于其他仓库的文件,且其中相当一部分在不同仓库中被独立维护、产生不同变更。随后人工分析代表性共享文件及其变体,判断哪些变更可能对元维护有用。结果表明元维护具有潜力,并为未来工作开辟方向。
Online collaboration platforms such as GitHub have provided software developers with the ability to easily reuse and share code between repositories. With clone-and-own and forking becoming prevalent, maintaining these shared files is important, especially for keeping the most up-to-date version of reused code. Different to related work, we propose the concept of meta-maintenance—i.e., tracking how the same files evolve in different repositories with the aim to provide useful maintenance opportunities to those files. We conduct an exploratory study by analyzing repositories from seven different programming languages to explore the potential of meta-maintenance. Our results indicate that a majority of active repositories on GitHub contains at least one file which is also present in another repository, and that a significant minority of these files are maintained differently in the different repositories which contain them. We manually analyzed a representative sample of shared files and their variants to understand which changes might be useful for meta-maintenance. Our findings support the potential of meta-maintenance and open up avenues for future work to capitalize on this potential.
DOI 原文 · arXiv · PDF(开放获取) · DBLP
@inproceedings{HataKIT21,
title = {Same File, Different Changes: The Potential of Meta-Maintenance on GitHub},
author = {Hideaki Hata and Raula Gaikovina Kula and Takashi Ishio and Christoph Treude},
booktitle = {ICSE},
year = {2021},
doi = {10.1109/icse43902.2021.00076}
}