Understanding Predictive Factors for Merge Conflicts

Timing Factors Descriptive Statistics


Ruby Sample
Study Design
Python Sample
Study Design

Contributions developed over longer periods of time more likely lead to conflicts


See Collinearity diagnostic results here
Ruby Sample - Odds Ratios from Regression Assessing Merge Conflicts Factors
Factor Metric Model I Model II Model III Model IV Model V Model VI Model VII
Changes to a common slice 6.13 *** 4.28 *** 3.80 *** 5.18 *** 4.28 *** 3.78 *** 5.11 ***
Number of commits 3.55 *** 3.53 ***
Number of developers 1.17 *** 1.56 *** 1.15 *** 1.51 ***
Number of changed files 3.27 *** 3.24 ***
Number of changed lines 0.99 0.99
Duration 1.04 *** 1.09 ***
Conclusion delay 1.01 1.01 1.01
Deviance Explained 10.9% 17.5% 19.0% 14.3% 17.5% 19.0% 14.5%
*** p < 0.001 ** p < 0.01 * p < 0.05

See Collinearity diagnostic results here
Python Sample - Odds Ratios from Regression Assessing Merge Conflicts Factors
Factor Metric Model I Model II Model III Model IV Model V Model VI Model VII
Changes to a common slice 4.39 *** 2.82 *** 3.13 *** 3.60 *** 2.83 *** 3.11 *** 3.52 ***
Number of commits 2.16 *** 2.17 ***
Number of developers 1.36 *** 1.45 *** 1.36 *** 1.44 ***
Number of changed files 2.40 *** 2.17 ***
Number of changed lines 1.64 *** 1.49 ***
Duration 1.18 *** 1.23 ***
Conclusion delay 0.98 0.87 *** 0.85 ***
Deviance Explained 7.1% 14.4% 13.5% 11.6% 14.4% 14.3% 12.7%
*** p < 0.001 ** p < 0.01 * p < 0.05

Contribution duration and conclusion delay do not predict the extent of merge damage


Ruby Sample - Timing metrics do not correlate strongly with Number of Merge Conflicts
Timing Metrics cor p-value
Duration 0.2653527 < 2.2e-16
Conclusion delay 0.08103509 < 2.2e-16

Python Sample - Timing metrics do not correlate strongly with Number of Merge Conflicts
Timing Metrics cor p-value
Duration 0.2559877 < 2.2e-16
Conclusion delay 0.06454883 < 2.2e-16

Ruby Sample - Timing metrics do not correlate strongly with Number of Files with Merge Conflicts
Timing Metrics cor p-value
Duration 0.2658936 < 2.2e-16
Conclusion delay 0.08111435 < 2.2e-16

Python Sample - Timing metrics do not correlate strongly with Number of Files with Merge Conflicts
Timing Metrics cor p-value
Duration 0.2558886 < 2.2e-16
Conclusion delay 0.06533939 1.361e-12