Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/se-sic/jdime
syntactic merge tool for java
https://github.com/se-sic/jdime
conflict-resolution extendj java merge merging revision-control semistructured-merge structured-merge
Last synced: about 21 hours ago
JSON representation
syntactic merge tool for java
- Host: GitHub
- URL: https://github.com/se-sic/jdime
- Owner: se-sic
- License: lgpl-2.1
- Created: 2015-02-11T00:17:52.000Z (almost 10 years ago)
- Default Branch: develop
- Last Pushed: 2024-01-29T11:20:03.000Z (10 months ago)
- Last Synced: 2024-08-03T05:01:59.673Z (4 months ago)
- Topics: conflict-resolution, extendj, java, merge, merging, revision-control, semistructured-merge, structured-merge
- Language: Java
- Homepage:
- Size: 50.6 MB
- Stars: 20
- Watchers: 8
- Forks: 15
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# JDime
**Structured Merge with Auto-Tuning**## License & Copyright
* Copyright (C) 2013-2014 Olaf Lessenich
* Copyright (C) 2014-2017 University of Passau, Germany
> Authors: Olaf Lessenich, Georg SeibtAll rights reserved.
JDime is covered by the GNU Lesser General Public License.
The full license text is distributed with this software. See the `LICENSE` file.## Tools Used:
JDime uses these tools/libraries:* ExtendJ (https://bitbucket.org/jastadd/jastaddj)
> Commit [85fe215](https://bitbucket.org/extendj/extendj/commits/85fe215542d5cde4753e10a2b068b394f79d7984)
> Copyright (c) 2005-2008, Torbjörn Ekman
> Copyright (c) 2005-2017, ExtendJ Committers
> ExtendJ is covered by the Modified BSD License.
> The full license text is distributed with this software.
> See the file licenses/ExtendJ-BSD.The changes that were made to ExtendJ are shipped with this software
and covered by the Modified BSD License.
See patches/ExtendJ for the changes,
and patches/ExtendJ/LICENSE for the license text.## System Requirements:
* At least Java 11 for running the Gradle build of JDime
* Java 8 for developing / running JDime. If you are using Gradle to build / run, Gradle will automatically discover / download Java 8.
* If you are not on 64bit Linux or Windows: [libgit2](https://libgit2.github.com/) (for [JNativeMerge](https://gitlab.infosun.fim.uni-passau.de/seibt/JNativeMerge))## Installation:
Clone the repository using `git clone $URL`.JDime uses [Gradle](https://gradle.org/) as its build system.
To avoid version mismatches with already installed instances of gradle, you can use the supplied gradle wrapper `gradlew` that bootstraps the right version of gradle automatically.After running `./gradlew installDist`, the directory `build/install/JDime/bin` will contain Unix and Windows scripts that you can use to start the application.
## Usage:
The input versions are passed to JDime as command line arguments. To perform a three-way merge, JDime may be invoked as follows:`./JDime --mode [linebased|semistructured|structured] --output [file/directory] `
Note that you have to run JDime with the working directory set to the folder containing the Script produced by Gradle.
E.g., using the `installDist` task, you need to run JDime from `build/install/JDime/bin`.**Run `JDime --help` to show more extensive usage information.**