Indicators for Merge Conflicts in the Wild: Survey and Empirical Study

kaestner@cs.cmu.edu (O. Leßenich, J. Siegmund, S. Apel, C. Kästner, C. Hunsen)
Fri, 25 Dec 2020 15:26:39 GMT

Olaf Leßenich, Janet Siegmund, Sven Apel, Christian Kästner, and Claus Hunsen. Indicators for Merge Conflicts in the Wild: Survey and Empirical Study. Automated Software Engineering -- An International Journal (AUSE), 25(2):279--313, 2018.

While the creation of new branches and forks is easy and fast with modern version-control systems, merging is often time-consuming. Especially when dealing with many branches or forks, a prediction of merge costs based on lightweight indicators would be desirable to help developers recognize problematic merging scenarios before potential conflicts become too severe in the evolution of a complex software project. We analyze the predictive power of several indicators, such as the number, size or scattering degree of commits in each branch, derived either from the version-control system or directly from the source code. Based on a survey of 41 developers, we inferred 7 potential indicators to predict the number of merge conflicts. We tested corresponding hypotheses by studying 163 open-source projects, including 21,488 merge scenarios and comprising 49,449,773 lines of code. A notable (negative) result is that none of the 7 indicators suggested by the participants of the developer survey has a predictive power concerning the frequency of merge conflicts. We discuss this and other findings as well as perspectives thereof.