arrow
返回

DeepMerge: Learning to Merge Programs

delete2023-04-01
delete10
delete
OA
AI
E
Elizabeth Dinella
T
Todd Mytkowicz
A
A. Svyatkovskiy
C
Christian Bird *
M
Mayur Naik
S
Shuvendu K. Lahiri
DOI:10.1109/TSE.2022.3183955delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
In collaborative software development, program merging is the mechanism to integrate changes from multiple programmers. Merge algorithms in modern version control systems report a conflict when changes interfere textually. Merge conflicts require manual intervention and frequently stall modern continuous integration pipelines. Prior work found that, although costly, a large majority of resolutions involve re-arranging text without writing any new code. Inspired by this observation we propose the first data-driven approach to resolve merge conflicts with a machine learning model. We realize our approach in a tool DeepMerge that uses a novel combination of (i) an edit-aware embedding of merge inputs and (ii) a variation of pointer networks, to construct resolutions from input segments. We also propose an algorithm to localize manual resolutions in a resolved file and employ it to curate a ground-truth dataset comprising 8,719 non-trivial resolutions in JavaScript programs. Our evaluation shows that, on a held out test set, DeepMerge can predict correct resolutions for 37% of non-trivial merges, compared to only 4% by a state-of-the-art semistructured merge technique. Furthermore, on the subset of merges with upto 3 lines (comprising 24% of the total dataset), DeepMerge can predict correct resolutions with 78% accuracy.
Keyword:
Merge conflicts
conflict resolution
software maintenance
software tools

期刊

IEEE Transactions on Software Engineering 封面图
IEEE Transactions on Software Engineering
IF:
5.6
论文数:
2.8K
被引数:
1.1W

机构

U
university of pennsylvania
学者数:
9.2W
论文数: 7.8W
被引数: 153
M
Microsoft
学者数:
3.0K
论文数: 2.7K
被引数: 7
引用论文

引用论文

A high temperature variety of BiOF一种高温品种的BiOF
err1983-09-01
err0
PREAI
errSamir Matar; Jean-Maurice Reau; Louis Rabardel; Gérard Demazeau; Paul Hagenmuller
err分享
err收藏
Balanocarpol, a new polyphenol from Balanocarpus zeylanicus(trimen) and Hopea jucunda(Thw.)(Dipterocarpaceae)
err1985-01-01
err0
PREAI
errM. N. Champika Diyasena; Subramaniam Sotheeswaran; Sivagnanasunderam Surendrakumar; Sinnathamby Balasubramanian; Michael Bokel; Wolfgang Kraus
err分享
err收藏
On the Nature of Merge Conflicts: A Study of 2,731 Open Source Java Projects Hosted by GitHub
err2020-08-01
err43
errOAAI
errGhiotto, Gleiph; Murta, Leonardo; Barros, Marcio; van der Hoek, Andre
err分享
err收藏
Programmed sample delivery on a pressurized paper
err2014-10-24
err0
errOAAI
errJoong Ho Shin; Juhwan Park; Seung Hoon Kim; Je-Kyun Park
err分享
err收藏
err分享
err收藏
学者 查看更多内容