Understanding the Impact of Branch Edit Features for the Automatic Prediction of Merge Conflict Resolutions

dc.contributor.authorAldndni, Waaden
dc.contributor.authorServant, Franciscoen
dc.contributor.authorMeng, Naen
dc.date.accessioned2024-07-01T18:58:29Zen
dc.date.available2024-07-01T18:58:29Zen
dc.date.issued2024-04-15en
dc.date.updated2024-07-01T08:07:03Zen
dc.description.abstractDevelopers regularly have to resolve merge conflicts, i.e., two conflicting sets of changes to the same files in different branches, which can be tedious and error-prone. To resolve conflicts, developers typically: keep the local version (KL) or the remote version (KR) of the code. They also sometimes manually edit both versions into a single one (ME). However, most existing techniques only support merging the local and remote versions (the ME strategy). We recently proposed RPRedictoR, a machine learning-based approach to support developers in choosing how to resolve a conflict (by KL, KR, or ME), by predicting their resolution strategy. In its original design, RPRedictoR uses a set of Evolution History Features (𝐸𝐻𝐹 s) that capture: the magnitude of the changes in conflict, their evolution, and the experience of the developers involved. In this paper, we proposed and evaluated a new set of Branch Edit Features (𝐵𝐸𝐹 s), that capture the fine-grained edits that were performed on each branch of the conflict. We learned multiple lessons. First, 𝐵𝐸𝐹 s provided lower effectiveness (F-score) than the original 𝐸𝐻𝐹 s. Second, combining 𝐵𝐸𝐹 s with 𝐸𝐻𝐹 s still did not improve the effectiveness of 𝐸𝐻𝐹 s, it provided the same f-score. Third, the feature set that provided highest effectiveness in our experiments was the combination of 𝐸𝐻𝐹𝑠 with a subset of 𝐵𝐸𝐹 s that captures the number of insertions performed in the local branch, but this combination only improved 𝐸𝐻𝐹 s by 3 pp. f-score. Finally, our experiments also share the lesson that some feature sets provided higher C-score (i.e., the safety of the technique’s mistakes) as a trade-off for lower f-scores. This may be valued by developers and we believe that it should be studied in the future.en
dc.description.versionPublished versionen
dc.format.mimetypeapplication/pdfen
dc.identifier.doihttps://doi.org/10.1145/3643916.3644433en
dc.identifier.urihttps://hdl.handle.net/10919/120563en
dc.language.isoenen
dc.publisherACMen
dc.rightsCreative Commons Attribution-NonCommercial-ShareAlike 4.0 Internationalen
dc.rights.holderThe author(s)en
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/4.0/en
dc.titleUnderstanding the Impact of Branch Edit Features for the Automatic Prediction of Merge Conflict Resolutionsen
dc.typeArticle - Refereeden
dc.type.dcmitypeTexten

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
3643916.3644433.pdf
Size:
303.13 KB
Format:
Adobe Portable Document Format
Description:
Published version
License bundle
Now showing 1 - 1 of 1
Name:
license.txt
Size:
1.5 KB
Format:
Item-specific license agreed upon to submission
Description: