中文
相关论文

相关论文: Detecting Semantic Conflicts with Unit Tests

200 篇论文

Semantic conflicts arise when a developer introduces changes to a codebase that unintentionally affect the behavior of changes integrated in parallel by other developers. Traditional merge tools are unable to detect such conflicts, so…

软件工程 · 计算机科学 2025-08-15 Nathalia Barbosa , Paulo Borba , Léuson Da Silva

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…

软件工程 · 计算机科学 2023-10-16 Galileu Santos de Jesus , Paulo Borba , Rodrigo Bonifácio , Matheus Barbosa de Oliveira

Merging other branches into the current working branch is common in collaborative software development. However, developers still heavily rely on the textual merge tools to handle the complicated merge tasks. The latent semantic merge…

软件工程 · 计算机科学 2020-03-03 Tao Ji , Liqian Chen , Xiaoguang Mao , Xin Yi , Jiahong Jiang

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…

软件工程 · 计算机科学 2021-11-24 Jialu Zhang , Todd Mytkowicz , Mike Kaufman , Ruzica Piskac , Shuvendu K. Lahiri

Developers create software branches for tentative feature addition and bug fixing, and periodically merge branches to release software with new features or repairing patches. When the program edits from different branches textually overlap…

软件工程 · 计算机科学 2021-03-04 Bowen Shen , Cihan Xiao , Na Meng , Fei He

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…

软件工程 · 计算机科学 2015-08-11 Stanislav Levin , Amiram Yehudai

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…

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…

软件工程 · 计算机科学 2024-09-24 Qingyu Zhang , Liangcai Su , Kai Ye , Chenxiong Qian

Context: Conflicts between software requirements bring uncertainties to product development. Some great approaches have been proposed to identify these conflicts. However, they usually require the software requirements represented with…

软件工程 · 计算机科学 2021-03-04 Weize Guo , Li Zhang , Xiaoli Lian

Structured merge tools exploit programming language syntactic structure to enhance merge accuracy by reducing spurious conflicts reported by unstructured tools. By creating and handling full ASTs, structured tools are language-specific and…

软件工程 · 计算机科学 2024-07-29 Guilherme Cavalcanti , Paulo Borba , Leonardo dos Anjos , Jonatas Clementino

Even though many programmers rely on 3-way merge tools to integrate changes from different branches, such tools can introduce subtle bugs in the integration process. This paper aims to mitigate this problem by defining a semantic notion of…

编程语言 · 计算机科学 2018-02-20 Marcelo Sousa , Isil Dillig , Shuvendu Lahiri

In software development, version control systems (VCS) provide branching and merging support tools. Such tools are popular among developers to concurrently change a code-base in separate lines and reconcile their changes automatically…

软件工程 · 计算机科学 2015-09-21 Martín Dias , Guillermo Polito , Damien Cassou , Stéphane Ducasse

Despite the remarkable capabilities of Language Models (LMs) across diverse tasks, no single model consistently outperforms others, necessitating efficient methods to combine their strengths without expensive retraining. Existing model…

计算与语言 · 计算机科学 2025-05-27 Jian Gu , Aldeida Aleti , Chunyang Chen , Hongyu Zhang

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…

软件工程 · 计算机科学 2024-10-15 Benedikt Schesch , Ryan Featherman , Kenneth J. Yang , Ben R. Roberts , Michael D. Ernst

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…

软件工程 · 计算机科学 2019-07-16 Moein Owhadi-Kareshk , Sarah Nadi , Julia Rubin

Automated unit test generators, particularly search-based software testing tools like EvoSuite, are capable of generating tests with high coverage. Although these generators alleviate the burden of writing unit tests, they often pose…

软件工程 · 计算机科学 2024-08-22 Amirhossein Deljouyi , Roham Koohestani , Maliheh Izadi , Andy Zaidman

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,…

This paper applies machine learning to the difficult and important task of version control merging. (1) We constructed a dataset, Merge-Bench, of 7938 real-world merge conflict hunks from 1439 GitHub repositories. The ground truth is the…

机器学习 · 计算机科学 2026-05-26 Benedikt Schesch , Michael D. Ernst

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…

软件工程 · 计算机科学 2021-03-04 Rangeet Pan , Vu Le , Nachiappan Nagappan , Sumit Gulwani , Shuvendu Lahiri , Mike Kaufman

Current merge tools don't detect semantic conflicts, which occur when changes from different developers are textually integrated but semantically interfere with each other. Although researchers have proposed static analyses for detecting…

软件工程 · 计算机科学 2025-07-29 Matheus Barbosa , Paulo Borba , Rodrigo Bonifácio , Victor Lira , Galileu Santos
‹ 上一页 1 2 3 10 下一页 ›