Automatic Prediction of Developers’ Resolutions for Software Merge Conflicts
Loading...
Identifiers
Publication date
Reading date
Collaborators
Advisors
Tutors
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Elsevier
Share
Center
Department/Institute
Keywords
Abstract
In collaborative software development, developers simultaneously work in parallel on different branches that they merge periodically. When edits from different branches textually overlap, conflicts may occur. Manually resolving conflicts can be tedious and error-prone. Researchers proposed tool support for conflict resolution, but these tools barely consider developers’ preferences. Conflicts can be resolved by: keeping the local version only KL, keeping the remote version only (KR), or manually editing them (ME). Recent studies show that developers resolved the majority of textual conflicts by KL or KR. Thus, we created a machine learning-based approach RPredictor to predict developers’ resolution strategy (KL, KR, or ME) given a merge conflict. We did large-scale experiments on the historical resolution of 74,861 conflicts. Our experiments show that RPredictor achieved 63% F-score for within-project prediction and 46% F-score for cross-project prediction. Compared with other classifiers, RPredictor provides the highest effectiveness when using a random forest (RF) classifier. Finally, we proposed a variant technique RPredictorv , which enables developers to customize its prediction conservativeness. For a highly conservative setting, RPredictorv achieved 34% effort saving while minimizing the risk of producing incorrect prediction labels.
Description
Bibliographic citation
Waad Aldndni, Na Meng, Francisco Servant, Automatic prediction of developers’ resolutions for software merge conflicts, Journal of Systems and Software, Volume 206, 2023, 111836, ISSN 0164-1212, DOI: https://doi.org/10.1016/j.jss.2023.111836
Collections
Endorsement
Review
Supplemented By
Referenced by
Creative Commons license
Except where otherwised noted, this item's license is described as Attribution-NonCommercial-NoDerivatives 4.0 Internacional












