The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
The String-to-String Correction Problem
Journal of the ACM (JACM)
Bounds on the Complexity of the Longest Common Subsequence Problem
Journal of the ACM (JACM)
A linear space algorithm for computing maximal common subsequences
Communications of the ACM
WYLBUR: an interactive text editing and remote job entry system
Communications of the ACM
Communications of the ACM
A two-view approach to constructing user interfaces
SIGGRAPH '89 Proceedings of the 16th annual conference on Computer graphics and interactive techniques
Structure-oriented merging of revisions of software documents
SCM '91 Proceedings of the 3rd international workshop on Software configuration management
Sorceress: a database approach to software configuration management
SCM '91 Proceedings of the 3rd international workshop on Software configuration management
Delta storage for arbitrary non-text files
SCM '91 Proceedings of the 3rd international workshop on Software configuration management
Debunking the software patent myths
Communications of the ACM
A linear-time scheme for version reconstruction
ACM Transactions on Programming Languages and Systems (TOPLAS)
YAP3: improved detection of similarities in computer program and other texts
SIGCSE '96 Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education
Representability of design objects by ancestor-controlled hierarchical specifications
PODS '90 Proceedings of the ninth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
ACM Computing Surveys (CSUR)
Behavioral Aspects of Text Editors
ACM Computing Surveys (CSUR)
The string-to-string correction problem with block moves
ACM Transactions on Computer Systems (TOCS)
A guided tour to approximate string matching
ACM Computing Surveys (CSUR)
Ancestor Controlled Submodule Inclusion in Design Databases
IEEE Transactions on Knowledge and Data Engineering
Computer-Aided Software Engineering in a distributed workstation environment
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
Studying cooperation and conflict between authors with history flow visualizations
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
A generic approach to supporting diagram differencing and merging for collaborative design
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Model comparison: a foundation for model composition and model transformation testing
Proceedings of the 2006 international workshop on Global integrated model management
Comparing and managing multiple versions of slide presentations
UIST '06 Proceedings of the 19th annual ACM symposium on User interface software and technology
Proceedings of the 2007 OOPSLA workshop on eclipse technology eXchange
A data structure for representing multi-version texts online
International Journal of Human-Computer Studies
Network analysis of collaboration structure in Wikipedia
Proceedings of the 18th international conference on World wide web
Automated software license analysis
Automated Software Engineering
d.note: revising user interfaces through change tracking, annotations, and alternatives
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Using text animated transitions to support navigation in document histories
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
What would other programmers do: suggesting solutions to error messages
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Deep Diffs: visually exploring the history of a document
Proceedings of the International Conference on Advanced Visual Interfaces
A sentence-matching method for automatic license identification of source code files
Proceedings of the IEEE/ACM international conference on Automated software engineering
COLING '10 Proceedings of the 23rd International Conference on Computational Linguistics
Information Processing and Management: an International Journal
On the benefits of providing versioning support for end users: An empirical study
ACM Transactions on Computer-Human Interaction (TOCHI)
Hi-index | 48.23 |
A simple algorithm is described for isolating the differences between two files. One application is the comparing of two versions of a source program or other file in order to display all differences. The algorithm isolates differences in a way that corresponds closely to our intuitive notion of difference, is easy to implement, and is computationally efficient, with time linear in the file length. For most applications the algorithm isolates differences similar to those isolated by the longest common subsequence. Another application of this algorithm merges files containing independently generated changes into a single file. The algorithm can also be used to generate efficient encodings of a file in the form of the differences between itself and a given “datum” file, permitting reconstruction of the original file from the diference and datum files.