Effective Software Merging in the Presence of Object-Oriented Refactorings

  • Authors:
  • Danny Dig;Kashif Manzoor;Ralph E. Johnson;Tien N. Nguyen

  • Affiliations:
  • University of Illinois at Urbana-Champaign, Urbana;University of Illinois at Urbana-Champaign, Urbana;University of Illinois at Urbana-Champaign, Urbana;Iowa State University, Ames

  • Venue:
  • IEEE Transactions on Software Engineering
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Current text based Software Configuration Management (SCM) systems have trouble with refactorings. Refactorings result in global changes which lead to merge conflicts. A refactoring-aware SCM system reduces merge conflicts. This paper describes MolhadoRef, a refactoring-aware SCM system and the merge algorithm at its core. MolhadoRef records change operations (refactorings and edits) used to produce one version, and replays them when merging versions. Since refactorings are change operations with well defined semantics, MolhadoRef treats them intelligently. A case study and a controlled experiment show that MolhadoRef automatically solves more merge conflicts than CVS while resulting in fewer merge errors.