Back to results

Virginia Tech

Automating The Detection and Resolution of Build Conflicts in Software Merge for Java Programs

Abstract

dc:description.abstract

Version control systems (VCS) like Git provide an efficient environment for collaborative software development. However, a major challenge of using such systems is the conflicts that occur when developers try to merge branches. This research focuses on build conflicts--a category of higher-order software merge conflicts. The goal of our research is to develop and implement methodologies that automate the detection and resolution process of build conflicts. Our research consists of three pieces. First, we designed and implemented a graph-based pattern matching approach, BUCOND (Build Conflict Detector), to detect conflicts via static analysis. Our evaluation shows that BUCOND accurately identified build conflicts on both synthetic and real-world datasets; it demonstrated great applicability in scenarios where compiler-based tools are inapplicable. Second, we created a hybrid program transformation approach, BuCoR (Build Conflict Resolver), to opportunistically resolve conflicts. We evaluated BuCoR in real-world merging scenarios, observing its great capabilities of generating syntactically correct resolutions and mimicking human developers' resolution practices. Third, we explored a new approach of resolving conflicts using LLMs, and empirically compared the usage of different LLMs as well as diverse prompt designs. We demonstrate that, when properly guided, LLMs can provide highly accurate conflict resolutions. Our research will help developers detect conflicts more efficiently and resolve conflicts with higher effectiveness as well as rigor. Through addressing issues caused by merge conflicts, it will help improve programmer productivity and software reliability.

Degree

thesis:*
Name thesis:degree_name
Doctor of Philosophy
Level thesis:degree_level
doctoral
Discipline thesis:degree_discipline
Computer Science & Applications
Department dc:contributor.department
Computer Science and#38; Applications
Grantor dc:publisher
Virginia Tech
Year dc:date.issued
2026

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Towqir, Sheikh Shadab
Chair dc:contributor.committeechair
  • Meng, Na
Committee members dc:contributor.committeemember
  • Gulzar, Muhammad Ali
  • Servant Cortes, Francisco Javier
  • Tilevich, Eli
  • He, Fei

Subjects

dc:subject × 6

Rights

dc:rights
Statement dc:rights
  • Creative Commons Attribution 4.0 International
Language dc:language.iso
en

Identifiers

dc:identifier.*
Dc Identifier Other
vt_gsexam:45596
OAI identifier oai:identifier
oai:vtechworks.lib.vt.edu:10919/140818

Chain of custody

source
Harvested from
Virginia Tech
Base URL
vtechworks.lib.vt.edu/oai/request
Last updated
2026-07-22
Source record
OAI-PMH GetRecord
citation

Towqir, Sheikh Shadab. Automating The Detection and Resolution of Build Conflicts in Software Merge for Java Programs. doctoral thesis, Virginia Tech, 2026. https://hdl.handle.net/10919/140818