English
Related papers

Related papers: Automatic Detection and Resolution of Software Mer…

200 papers

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…

Software Engineering · Computer Science 2021-09-08 Elizabeth Dinella , Todd Mytkowicz , Alexey Svyatkovskiy , Christian Bird , Mayur Naik , Shuvendu K. Lahiri

Background. During collaborative software development, developers often use branches to add features or fix bugs. When merging changes from two branches, conflicts may occur if the changes are inconsistent. Developers need to resolve these…

Software Engineering · Computer Science 2019-07-16 Moein Owhadi-Kareshk , Sarah Nadi , Julia Rubin

Merge conflicts created by software team members working on the same code can be costly to resolve, and adversely affect productivity. In this work, we suggest the approach of fine-grained merge conflict awareness, where software team…

Software Engineering · Computer Science 2015-08-11 Stanislav Levin , Amiram Yehudai

Forking structure is widespread in the open-source repositories and that causes a significant number of merge conflicts. In this paper, we study the problem of textual merge conflicts from the perspective of Microsoft Edge, a large, highly…

Software Engineering · Computer Science 2021-03-04 Rangeet Pan , Vu Le , Nachiappan Nagappan , Sumit Gulwani , Shuvendu Lahiri , Mike Kaufman

Version control system tools empower developers to independently work on their development tasks. These tools also facilitate the integration of changes through merging operations, and report textual conflicts. However, when developers…

Software Engineering · Computer Science 2023-10-16 Galileu Santos de Jesus , Paulo Borba , Rodrigo Bonifácio , Matheus Barbosa de Oliveira

Developing complex software requires that multiple views and versions of the software can be developed in parallel and merged as supported by views and managed by version control systems. In this context, this paper considers monitoring…

Software Engineering · Computer Science 2022-07-12 Matthias Barkowsky , Holger Giese

A version control system, such as Git, requires a way to integrate changes from different developers or branches. Given a merge scenario, a merge tool either outputs a clean integration of the changes, or it outputs a conflict for manual…

Software Engineering · Computer Science 2024-10-15 Benedikt Schesch , Ryan Featherman , Kenneth J. Yang , Ben R. Roberts , Michael D. Ernst

Resolving conflicts from merging different software versions is a challenging task. To reduce the overhead of manual merging, researchers develop various program analysis-based tools which only solve specific types of conflicts and have a…

Software Engineering · Computer Science 2024-09-24 Qingyu Zhang , Liangcai Su , Kai Ye , Chenxiong Qian

In collaborative software development, multiple contributors frequently change the source code in parallel to implement new features, fix bugs, refactor existing code, and make other changes. These simultaneous changes need to be merged…

Software Engineering · Computer Science 2023-05-11 Andre Oliveira , Vania Neves , Alexandre Plastino , Ana Carla Bibiano , Alessandro Garcia , Leonardo Murta

Collaborative software development is an integral part of the modern software development life cycle, essential to the success of large-scale software projects. When multiple developers make concurrent changes around the same lines of code,…

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…

Software Engineering · Computer Science 2021-11-24 Jialu Zhang , Todd Mytkowicz , Mike Kaufman , Ruzica Piskac , Shuvendu K. Lahiri

Branching and merging are common practices in collaborative software development, increasing developer's productivity. Despite such benefits, developers need to merge software and resolve merge conflicts. While modern merge techniques can…

Software Engineering · Computer Science 2025-07-10 Léuson Da Silva , Paulo Borba , Toni Maciel , Wardah Mahmood , Thorsten Berger , João Moisakis , Aldiberg Gomes , Vinícius Leite

Modern software development necessitates efficient version-oriented collaboration among developers. While Git is the most popular version control system, it generates unsatisfactory version merging results due to textual-based workflow,…

Software Engineering · Computer Science 2024-07-04 Qingyu Zhang , Junzhe Li , Jiayi Lin , Jie Ding , Lanteng Lin , Chenxiong Qian

Merge conflicts often arise when developers integrate changes from different software branches. The conflicts can result from overlapping edits in programs (i.e., textual conflicts) or cause build and test errors (i.e., build and test…

Software Engineering · Computer Science 2026-02-13 Sheikh Shadab Towqir , Fei He , Todd Mytkowicz , Na Meng

Software engineers who collaborate to develop software in teams often have to manually merge changes they made to a module (e.g. a class), because the change conflicts with one that has just been made by another engineer to the same or…

Software Engineering · Computer Science 2015-04-28 Stanislav Levin , Amiram Yehudai

To satisfy varying customer needs, device vendors and OS providers often rely on the open-source nature of the Android OS and offer customized versions of the Android OS. When a new version of the Android OS is released, device vendors and…

Software Engineering · Computer Science 2022-06-01 Pei Liu , Mattia Fazzini , John Grundy , Li Li

During the software evolution, existing features may be adversely affected by new changes, which is well known as regression errors. Maintaining a high-quality test suite is helpful to prevent regression errors, whereas it heavily depends…

Software Engineering · Computer Science 2020-09-23 Tao Ji , Liqian Chen , Xiaoguang Mao , Xin Yi , Jiahong Jiang

Modern, complex software systems are being continuously extended and adjusted. The developers responsible for this may come from different teams or organizations, and may be distributed over the world. This may make it difficult to keep…

Software Engineering · Computer Science 2022-01-07 Chandra Maddila , Nachiappan Nagappan , Christian Bird , Georgios Gousios , Arie van Deursen

Code review consists of manual inspection, discussion, and judgment of source code by developers other than the code's author. Due to discussions around competing ideas and group decision-making processes, interpersonal conflicts during…

Software Engineering · Computer Science 2022-01-17 Pavlína Wurzel Gonçalves , Gül Çalıklı , Alberto Bacchelli

Software Engineering 3.0 marks a paradigm shift in software development, in which AI coding agents are no longer just assistive tools but active contributors. While prior empirical studies have examined productivity gains and acceptance…

Software Engineering · Computer Science 2026-05-14 Daniel Ogenrwot , John Businge
‹ Prev 1 2 3 10 Next ›