Issue No. 05 - May (2002 vol. 28)
<p>Software merging is an essential aspect of the maintenance and evolution of large-scale software systems. This paper provides a comprehensive survey and analysis of available merge approaches. Over the years, a wide variety of different merge techniques has been proposed. While initial techniques were purely based on textual merging, more powerful approaches also take the syntax and semantics of the software into account. There is a tendency towards operation-based merging because of its increased expressiveness. Another tendency is to try to define merge techniques that are as general, accurate, scalable, and customizable as possible, so that they can be used in any phase in the software life-cycle and detect as many conflicts as possible. After comparing the possible merge techniques, we suggest a number of important open problems and future research directions.</p>
software merging, large-scale software development, merge conflicts, conflict detection, conflict resolution
T. Mens, "A State-of-the-Art Survey on Software Merging," in IEEE Transactions on Software Engineering, vol. 28, no. , pp. 449-462, 2002.