Displays diffs in a convenient html page.
- Useful when dealing with large validation text files or directory structures in automated builds, e.g. on Jenkins.
- Collapsible diff sections for each file make the result easy to read when comparing directories
- Pure Java solution (optionally, use Linux diff under the hood - might be faster depending on your machine)
Install:
$ ./gradlew installDist
To compare two directories (or files), e.g. dir1 and dir2, use the fat jar
$ java -jar build/libs/diff-to-html-1.0.jar dir1 dir2
or the start script
$ ./build/install/diff-to-html/scripts/diff-to-html dir1 dir2
which will give you something like
Output written to: file:///home/maurice/Git-Projects/openSource/diff-to-html/diff_dir1_dir2.html
Directories differ!
Call without arguments for help
$ java -jar build/libs/cronn-diff-to-html-1.0.jar
usage: cronn-diff-to-html <input_left> <input_right> [<output_html>] [-w]
[-b] [-or] [-od] [-iu] [-de] [-u <arg>]
-w,--ignorewhitespaces ignore all white spaces
-b,--ignorespacechange ignore changes in the amount of white space
-or,--onlyreports gives back zero code always
-od,--osdiff uses operating system's diff instead of Java
implementation and parses the output. Windows
not supported currently
-iu,--ignoreunique ignore unique files
-de,--detectencoding tries to determine encoding type
-u,--unified <arg> output <arg> (default 3) lines of unified
context
Parsing failed. Reason: Input arguments are missing
Generate your tar (or zip) to take wherever you want
$ ./gradlew distTar distZip
$ ls build/distributions/
diff-to-html-1.0.tar diff-to-html-1.0.zip
- Java 8
- On Unix system (only if you want to use OS diff under the hood)