Skip to content

☕ An algorithm to compare any number of trees, provided with an implementation for directory comparison.

License

Notifications You must be signed in to change notification settings

cyChop/tree-comparer

Repository files navigation

Tree comparer

Build status Test coverage Technical debt Issues License: Apache 2.0

What's this?

This project is an algorithm I designed to compare two or more trees. The algorithm is designed so that it can be applied to any kind of tree (understand: a node with children nodes, with children nodes, ...).

The most immediate application is obviously the comparison of directories. This is why the project already contains an implementation for files. It was proofed by (accurately) comparing the configuration of several environments (local, development, quality & acceptance, production).

What's in this?

  • tree-comparer-model: the objects needed for the use of the algorithm.
  • tree-comparer-algorithm: the comparison algorithm properly.
  • tree-comparer-reporter: a tool to generate a report from a compared tree.
  • tree-comparer-file: the implementation of the models and utilities for directory comparison.
  • plaintext-diff: a plaintext comparison utility, extracted from the ASF 2.0 licensed Diff Match Patch project; used mainly for reporting.

== The concurrence

Some products already exist and are easier to use, with an interactive user interface.

  • WinMerge can compare two directories and enables interactive browsing of the differences.
  • KDiff3 can compare up to three directories.

This algorithm however can compare a virtually unlimited number of trees.

About

☕ An algorithm to compare any number of trees, provided with an implementation for directory comparison.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages