Can Pre-trained Language Models be Used to Resolve Textual and Semantic Merge Conflicts?
Jialu Zhang, Todd Mytkowicz, Mike Kaufman, Ruzica Piskac, Shuvendu K., Lahiri

TL;DR
This paper investigates using large neural language models like GPT-3 to automatically resolve textual and semantic merge conflicts in software development, evaluating their effectiveness on real-world projects and comparing with traditional methods.
Contribution
It demonstrates the potential of k-shot learning with LMs for semantic conflict resolution and highlights current limitations compared to fine-tuned models and domain-specific languages.
Findings
LMs achieve state-of-the-art results on semantic merge conflicts in Microsoft Edge.
LMs are less effective than fine-tuned models or domain-specific languages for certain conflict types.
Results are mixed, showing promise but also current limitations of LMs in this application.
Abstract
Program merging is standard practice when developers integrate their individual changes to a common code base. When the merge algorithm fails, this is called a merge conflict. The conflict either manifests in textual merge conflicts where the merge fails to produce code, or semantic merge conflicts where the merged code results in compiler or test breaks. Resolving these conflicts for large code projects is expensive because it requires developers to manually identify the sources of conflict and correct them. In this paper, we explore the feasibility of automatically repairing merge conflicts (both textual and semantic) using k-shot learning with large neural language models (LM) such as GPT-3. One of the challenges in leveraging such language models is to fit the examples and the queries within a small prompt (2048 tokens). We evaluate LMs and k-shot learning for two broad…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software Testing and Debugging Techniques · Software Reliability and Analysis Research
