Flexible Merging for Asynchronous Collaborative Systems

Version control systems are widely used asynchronous collaborative systems in team-working environments, where document merging is a key function. However most existing systems only support limited semantic merging, and techniques for supporting semantic merging are strictly bound up with the merging algorithms that do syntactic merging. In this paper, we propose a flexible merging framework in which semantic merging policies are separated from the syntactic merging mechanism for asynchronous collaborative systems. In this framework, semantic merging policies are not restricted by the merging algorithms used in the syntactic merging mechanism, and the syntactic merging mechanism is flexible to support a wide range of semantic merging policies. This framework can be used to describe and compare a range of existing merging policies and mechanisms, and to guide the design of new merging policies and mechanisms. The proposed framework has been applied to the design of a flexible merging component in FORCE (Flexible Operation-based Revision Control Environment) prototype, which uses a single syntactic merging mechanism to support a range of semantic merging policies.

[1]  Ben Collins-Sussman,et al.  The subversion project: buiding a better CVS , 2002 .

[2]  Eugene W. Myers,et al.  A file comparison program , 1985, Softw. Pract. Exp..

[3]  加藤 真紀子 Network Software Environmentとその利用事例 , 1991 .

[4]  Yanchun Zhang,et al.  Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems , 1998, TCHI.

[5]  Chengzheng Sun,et al.  Operational transformation in real-time group editors: issues, algorithms, and achievements , 1998, CSCW '98.

[6]  Antony I. T. Rowstron,et al.  The IceCube approach to the reconciliation of divergent replicas , 2001, PODC '01.

[7]  Thomas Berlage,et al.  A framework for shared applications with a replicated architecture , 1993, UIST '93.

[8]  Haifeng Shen,et al.  A log compression algorithm for operation-based version control systems , 2002, Proceedings 26th Annual International Computer Software and Applications.

[9]  Ernst Lippe,et al.  Operation-based merging , 1992, SDE 5.

[10]  Marvin Theimer,et al.  Designing and implementing asynchronous collaborative applications with Bayou , 1997, UIST '97.

[11]  Prasun Dewan,et al.  A flexible object merging framework , 1994, CSCW '94.

[12]  David B. Leblang,et al.  ClearCase MultiSite: Supporting Geographically-Distributed Software Development , 1995, SCM.

[13]  Walter F. Tichy,et al.  Rcs — a system for version control , 1985, Softw. Pract. Exp..

[14]  Brian Berliner,et al.  CVS II: Parallelizing Software Dev elopment , 1998 .