diffutils: Detailed Unified
2.2.2.2 Detailed Description of Unified Format
..............................................
The unified output format starts with a two-line header, which looks
like this:
--- FROM-FILE FROM-FILE-MODIFICATION-TIME
+++ TO-FILE TO-FILE-MODIFICATION-TIME
The timestamp looks like '2002-02-21 23:30:39.942229878 -0800' to
indicate the date, time with fractional seconds, and time zone. The
fractional seconds are omitted on hosts that do not support fractional
timestamps.
You can change the header's content with the '--label=LABEL' option.
⇒Alternate Names.
Next come one or more hunks of differences; each hunk shows one area
where the files differ. Unified format hunks look like this:
@@ FROM-FILE-LINE-NUMBERS TO-FILE-LINE-NUMBERS @@
LINE-FROM-EITHER-FILE
LINE-FROM-EITHER-FILE...
If a hunk contains just one line, only its start line number appears.
Otherwise its line numbers look like 'START,COUNT'. An empty hunk is
considered to start at the line that follows the hunk.
If a hunk and its context contain two or more lines, its line numbers
look like 'START,COUNT'. Otherwise only its end line number appears.
An empty hunk is considered to end at the line that precedes the hunk.
The lines common to both files begin with a space character. The
lines that actually differ between the two files have one of the
following indicator characters in the left print column:
'+'
A line was added here to the first file.
'-'
A line was removed here from the first file.