    DIFF(I)                      5/15/74                      DIFF(I)

    NAME
         diff - differential file comparator

    SYNOPSIS
         diff [ - ] name1 name2

    DESCRIPTION
         Diff  tells what lines must be changed in two files to bring
         them into agreement.  The normal output  contains  lines  of
         these forms:

              n1 a n3,n4
              n1,n2 d n3
              n1,n2 c n3,n4

         These  lines resemble ed commands to convert file name1 into
         file name2.  The numbers after the letters pertain  to  file
         name2.  In fact, by exchanging `a' for `d' and reading back-
         ward one may ascertain equally how to convert file name2 in-
         to  name1.   As in ed, identical pairs where n1 = n2 or n3 =
         n4 are abbreviated as a single number.

         Following each of these lines come all the  lines  that  are
         affected  in  the  first  file  flagged by `*', then all the
         lines that are affected in the second file flagged by `.'.

         Under the - option, the output of diff is a script of  a, c
         and d commands for the editor ed, which will change the con-
         tents of the first file into the contents of the second.  In
         this  connection, the following shell program may help main-
         tain multiple versions of a file.  Only  an  ancestral  file
         ($1)   and   a   chain   of  version-to-version  ed  scripts
         ($2,$3,...) made by diff need be on hand.   A  `latest  ver-
         sion' appears on the standard output.

              (cat $2 ... $9; echo "1,$p") | ed - $1

         Except for occasional `jackpots', diff finds a smallest suf-
         ficient set of file differences.

    SEE ALSO
         cmp(I), comm(I), ed(I)

    DIAGNOSTICS
         `jackpot' - To speed things up, the  program  uses  hashing.
         You  have  stumbled  on  a case where there is a chance that
         this has resulted in a difference being  called  where  none
         actually  existed.   Sometimes  reversing the order of files
         will make a jackpot go away.

    BUGS
         Editing scripts produced under the - option are naive  about
         creating lines consisting of a single `.'.

                                  - 1 -