[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/1109128.1109138acmotherconferencesArticle/Chapter ViewAbstractPublication PagesscmConference Proceedingsconference-collections
Article

Revision control system using delta script of syntax tree

Published: 05 September 2005 Publication History

Abstract

In an opensource development process developers work together using a revision control system. While getting multi-developers working products together into a single form, merge feature of revision control systems is used. Nowadays, merge operations in existing systems are commonly implemented with a line-by-line approach that can fail if two changes to the same line of code happen at the same time.In this paper, we propose a two-way merge algorithm for source code that exploit the tree structure of modern programming language grammar: the source code is transformed in an intermediate XML representation and the merge operation is conducted on the transformed version.We give an implementation of the algorithm for the Java language for the subversion revision control system.Experiments shown that the proposed algorithm gives more accurate merge result than the existing line-by-line algorithms.

References

[1]
subversion. http://subversion.tigris.org/.
[2]
D. Binkley, S. Horwitz, and T. Reps. Program integration for languages with procedure calls. ACM Trans. Softw. Eng. Methodol., 4(1):3--35, 1995.
[3]
S. S. Chawathe, A. Rajaraman, H. Garcia-Molina, and J. Widom. Change detection in hierarchically structured information. In Proceedings of the ACM SIGMOD International Conference on Management of Data, pages 493--504, 1996.
[4]
S.-Y. Chien, V. J. Tsotras, and C. Zaniolo. Version management of XML documents. Lecture Notes in Computer Science, 1997:184--189, 2001.
[5]
S.-Y. Chien, V. J. Tsotras, and C. Zaniolo. XML document versioning. SIGMOD Record, 30(3):46--53, 2001.
[6]
S. Horwitz, J. Prins, and T. Reps. Integrating noninterfering versions of programs. ACM Trans. Program. Lang. Syst., 11(3):345--387, 1989.
[7]
A. Kermarrec, A. Rowstron, M. Shapiro, and P. Druschel. The IceCube approach to the reconciliation of divergent replicas. In Twentieth ACM Symposium on Principles of Distributed Computing (PODC), August 2001.
[8]
T. Mens. A state-of-the-art survey on software merging. IEEE Trans. Softw. Eng., 28(5):449--462, 2002.
[9]
M. Shapiro, A. Rowstron, and A.-M. Kermarrec. Application-independent reconciliation for nomadic applications. In Proc. SIGOPS European Workshop: "Beyond the PC: New Challenges for the Operating System", Kolding (Denmark), 2000.
[10]
B. Westfechtel. Structure-oriented merging of revisions of software documents. In Proceedings of the 3rd international workshop on Software configuration management, pages 68--79, New York, NY, USA, 1991. ACM Press.
[11]
W. Yang. Identifying syntactic differences between two programs. Softw. Pract. Exper., 21(7):739--755, 1991.

Cited By

View all
  • (2015)Estimating product evolution graph using Kolmogorov complexityProceedings of the 14th International Workshop on Principles of Software Evolution10.1145/2804360.2804368(66-72)Online publication date: 30-Aug-2015

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
SCM '05: Proceedings of the 12th international workshop on Software configuration management
September 2005
147 pages
ISBN:1595933107
DOI:10.1145/1109128
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 05 September 2005

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

SCM-12

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2015)Estimating product evolution graph using Kolmogorov complexityProceedings of the 14th International Workshop on Principles of Software Evolution10.1145/2804360.2804368(66-72)Online publication date: 30-Aug-2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media