Merging By Decentralized Eventual Consistency Algorithms

2015 
Merging mechanism is an essential operation for version control systems. When each member of a collaborative development work on an individual copy of the project, software merging allows to reconcile modifications made concurrently as well as managing software change through branching. The collaborative system is in charge to propose a merge result that includes user's modifications. The users now have to check and adapt this result. The adaptation should be as effortless as possible, otherwise, the users may get frustrated and will quit the collaboration. The objective of this paper consists of studying the textual merge results during the collaboration by using specific algorithms, and propose a solution to improve the result quality of the textual merge produced by the default merge tool of distributed version control systems. Through a study of eight open-source repositories totaling more than 3 million lines of code, we observe the behavior of the concurrent modifications during the merge procedure. We identified when the existing merge techniques under-perform, and we propose solutions to improve the quality of the merge. We finally compare with the traditional merge tool through a large corpus of collaborative editing.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    35
    References
    0
    Citations
    NaN
    KQI
    []