How Do Centralized and Distributed Version Control Systems Impact Software Changes?

被引:55
作者
Brindescu, Caius [1 ]
Codoban, Mihai [1 ]
Shmarkatiuk, Sergii [1 ]
Dig, Danny [1 ]
机构
[1] Oregon State Univ, Sch EECS, Corvallis, OR 97331 USA
来源
36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2014) | 2014年
关键词
Version Control; Software Change; Distributed; Centralized Version Control;
D O I
10.1145/2568225.2568322
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Distributed Version Control Systems (DVCS) have seen an increase in popularity relative to traditional Centralized Version Control Systems (CVCS). Yet we know little on whether developers are benefitting from the extra power of DVCS. Without such knowledge, researchers, developers, tool builders, and team managers are in the danger of making wrong assumptions. In this paper we present the first in-depth, large scale empirical study that looks at the influence of DVCS on the practice of splitting, grouping, and committing changes. We recruited 820 participants for a survey that sheds light into the practice of using DVCS. We also analyzed 409M lines of code changed by 358300 commits, made by 5890 developers, in 132 repositories containing a total of 73M LOC. Using this data, we uncovered some interesting facts. For example, (i) commits made in distributed repositories were 32% smaller than the centralized ones, (ii) developers split commits more often in DVCS, and (iii) DVCS commits are more likely to have references to issue tracking labels.
引用
收藏
页码:322 / 333
页数:12
相关论文
共 27 条
[1]   What's a typical commit? A characterization of open source software repositories [J].
Alali, Abdulkareem ;
Kagdi, Huzefa ;
Maletic, Jonathan I. .
PROCEEDINGS OF THE 16TH IEEE INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION, 2008, :182-191
[2]  
Arafat O., 2009, 42nd Hawaii International Conference on System Sciences, P1, DOI DOI 10.1109/HICSS.2009.421
[3]  
Bachmann Adrian, 2009, TECHNICAL REPORT
[4]  
Bird C, 2010, SIGSOFT FSE, P369
[5]   Fair and Balanced? Bias in Bug-Fix Datasets [J].
Bird, Christian ;
Bachmann, Adrian ;
Aune, Eirik ;
Duffy, John ;
Bernstein, Abraham ;
Filkov, Vladimir ;
Devanbu, Premkumar .
7TH JOINT MEETING OF THE EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND THE ACM SIGSOFT SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2009, :121-130
[6]   The Promises and Perils of Mining Git [J].
Bird, Christian ;
Rigby, Peter C. ;
Barr, Earl T. ;
Hamilton, David J. ;
German, Daniel M. ;
Devanbu, Prem .
2009 6TH IEEE INTERNATIONAL WORKING CONFERENCE ON MINING SOFTWARE REPOSITORIES, 2009, :1-+
[7]   Recommended Steps for Thematic Synthesis in Software Engineering [J].
Cruzes, Daniela S. ;
Dyba, Tore .
2011 FIFTH INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT (ESEM 2011), 2011, :275-284
[8]  
Finley Klint., 2011, GITHUB HAS SURPASSED
[9]   An empirical study of fine-grained software modifications [J].
German, Daniel M. .
EMPIRICAL SOFTWARE ENGINEERING, 2006, 11 (03) :369-393
[10]  
Gousios Georgios, 2012, 2012 9th IEEE Working Conference on Mining Software Repositories (MSR 2012), P12, DOI 10.1109/MSR.2012.6224294