Text file compare

Comparison

Compares two text files and generates a difference ("patch") file.

This online tool lets you compare two textual files and see how they differ from each other . It also lets you patch one file with a «diff» file (usually having extension .diff or .patch) to generate a new («patched») version. 

Max size of the input data is 10 MiB.

clear
clear
clear

Wrappers are executed in sequence on shared data string. For example, to supply base64-encoded stream of GZIP-compressed data enter wrappers: base64, gzip and fill the data input with the base64 stream. 

If data is not entered information from other tabs (upload, by URL and direct) is used to replace data on this page. This lets you enter gzip as a wrapper here and upload a file using upload tab while leaving data on this page empty. 

Currently supported wrappers are: base64, bzip, cslashes, datauri, direct, ftp, ftps, gzip, hex2bin, http, https, qprintable, upload, url, urlencoding, zlib

  • Upload
  • By URL
  • Direct input
  • Custom
Ctrl+Shift+E ↔

This is expected to be (if Compare button is clicked) a second file to compare first one to, or (if Patch is pressed) a patch file to apply to the original file.

Max size of the input data is 10 MiB.

clear
clear
clear

Wrappers are executed in sequence on shared data string. For example, to supply base64-encoded stream of GZIP-compressed data enter wrappers: base64, gzip and fill the data input with the base64 stream. 

If data is not entered information from other tabs (upload, by URL and direct) is used to replace data on this page. This lets you enter gzip as a wrapper here and upload a file using upload tab while leaving data on this page empty. 

Currently supported wrappers are: base64, bzip, cslashes, datauri, direct, ftp, ftps, gzip, hex2bin, http, https, qprintable, upload, url, urlencoding, zlib

  • Upload
  • By URL
  • Direct input
  • Custom
Ctrl+Shift+E ↔

Allowed options for diff are: --ignore-tab-expansion (-E), --ignore-space-change (-b), --ignore-all-space (-w), --ignore-blank-lines (-B), --ignore-matching-lines=? (-I), --strip-trailing-cr (0), --text (-a), --context (-c), --context=? (-C), --unified (-u), --unified=? (-U), --label ? (1), --show-c-function (-p), --show-function-line=? (-F), --ed (-e), --normal (2), --rcs (-n), --side-by-side (-y), --width=? (-W), --left-column (3), --suppress-common-lines (4), --expand-tabs (-t), --initial-tab (-T), --tabsize (5), --horizon-lines=? (6), --minimal (-d), --speed-large-files (7)

Allowed options for patch are: --context (-c), --ifdef=sym (-D), --ed (-e), --fuzz=number (-F), --ignore-whitespace (-l), --normal (-n), --reverse (-R), --skip (-S), --unified (-u)

Input is sanitized. Use double quotes (") to wrap parameters with spaces; double them to escape ("" → ").

Ctrl+Shift+E ↔