The promises and perils of mining git

Christian Bird, Peter C. Rigby, Earl T. Barr, David J. Hamilton, Daniel M. German, Prem Devanbu
2009 2009 6th IEEE International Working Conference on Mining Software Repositories  
We are now witnessing the rapid growth of decentralized source code management (DSCM) systems, in which every developer has her own repository. DSCMs facilitate a style of collaboration in which work output can flow sideways (and privately) between collaborators, rather than always up and down (and publicly) via a central repository. Decentralization comes with both the promise of new data and the peril of its misinterpretation. We focus on git, a very popular DSCM used in high-profile
more » ... Decentralization, and other features of git, such as automatically recorded contributor attribution, lead to richer content histories, giving rise to new questions such as "How do contributions flow between developers to the official project repository?" However, there are pitfalls. Commits may be reordered, deleted, or edited as they move between repositories. The semantics of terms common to SCMs and DSCMs sometimes differ markedly, potentially creating confusion. For example, a commit is immediately visible to all developers in centralized SCMs, but not in DSCMs. Our goal is to help researchers interested in DSCMs avoid these and other perils when mining and analyzing git data. Out of a stem that scored the hand I wrung it in a weary land. A. E. Housman, A Shropshire Lad 1. According to data provided by projects using the vcs-(SCM-) headers introduced to Debian package descriptions in 2006.
doi:10.1109/msr.2009.5069475 dblp:conf/msr/BirdRBHGD09 fatcat:52yvlcno6vdtlncauaw2cvaz2q