Evaluation of Version Control Merge Tools

Benedikt Schesch, Ryan Featherman, Kenneth J. Yang, B. K. Roberts, Michael D. Ernst · 2024

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 resolution. A clean integration is correct if it preserves intended program behavior, and is incorrect otherwise (e.g., if it causes a test failure). Manual resolution consumes valuable developer time, and correcting a defect introduced by an incorrect merge is even more costly.

Read the paper · More papers on PaperTik