Skip to content

FAU-Inf2/treedifferencing

This branch is 29 commits ahead of, 627 commits behind GumTreeDiff/gumtree:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

93a9cad · Feb 14, 2018
Jul 20, 2016
Feb 1, 2018
Feb 14, 2018
Feb 1, 2018
Feb 14, 2018
Feb 5, 2018
Jan 30, 2018
May 18, 2017
Feb 1, 2018
May 18, 2017
May 18, 2017
May 18, 2017
May 18, 2017
Jan 29, 2018
Feb 14, 2018
Feb 5, 2018
Feb 14, 2018
Feb 5, 2018
Feb 14, 2018
Feb 1, 2018
Nov 14, 2015
Feb 14, 2018
Feb 5, 2018
Jan 29, 2018
Feb 5, 2018
Feb 13, 2018
Feb 5, 2018
Jul 2, 2015
Dec 4, 2013
Aug 9, 2017
Oct 18, 2016
Feb 14, 2018
Dec 22, 2016
Feb 7, 2018
Oct 3, 2017
Aug 29, 2016
Oct 4, 2017
Feb 5, 2018

Repository files navigation

This is a fork of Gumtree.

It contains the MTDIFF implementation and several general optimizations for tree differencing algorithms. The data to the ASE 2016 publication "Move-Optimized Source Code Tree Differencing" is available in a separate repository.

Structure

This repository is structured as follows:

  • src/main/java/com/github/gumtreediff/matchers/optimizations: Contains the general optimizations for tree differencing algorithms.
  • src/main/java/com/github/gumtreediff/matchers/heuristic/mtdiff: Contains the new MTDIFF implementation.

Example

You can build the code with the following commands:

git clone https://github.com/FAU-Inf2/treedifferencing.git
cd treedifferencing
./gradlew build -x test

You will have a tar.gz distribution of GumTree in the dist/build/distributions folder. Unzip the archive.

To run the example from the publication with MTDIFF use:

./bin/dist webmtdiff Examples/Example1Original.java  Examples/Example1Modified.java
./bin/dist webmtdiff Examples/Example2Original.java  Examples/Example2Modified.java

To run the example from the publication with GumTree use:

./bin/dist webdiff Examples/Example1Original.java  Examples/Example1Modified.java
./bin/dist webdiff Examples/Example2Original.java  Examples/Example2Modified.java

License

  • The source code in src/java/main is licensed under LGPL version 3 (see LICENSE).

About

No description, website, or topics provided.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 93.1%
  • GAP 5.0%
  • Ruby 1.1%
  • Other 0.8%