ReadMe(FHist)                                                    ReadMe(FHist)



NNAAMMEE
       fhist - file history and comparison tools
       Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
       2000, 2001, 2002, 2003, 2004, 2005, 2006 Peter Miller; All rights
       reserved.

       Portions of this program are
       Copyright (C) 1990 David I. Bell.

       The _f_h_i_s_t package is distributed under the terms of the GNU General
       Public License, see the _L_I_C_E_N_S_E section, below, for more information.

DDEESSCCRRIIPPTTIIOONN
       The FHist package contains 3 utilities, a file history tool ``_f_h_i_s_t'',
       a file comparison tool ``_f_c_o_m_p'', and a file merging tool ``_f_m_e_r_g_e'.
       All three are bundled together, because they all use the same minimal-
       difference algorithm.

       fhist
               Keeps track of versions of a file.  It works correctly when
               given binary files as input.  See _f_h_i_s_t(1) for more
               information.

       fcomp
               Compares two versions of a file, usually line-for-line textual
               comparison.  It is capable of comparing two binary files byte-
               for-byte.  See _f_c_o_m_p(1) for more information.

       fmerge
               Merges together edits from two descendants of a file.  See
               _f_m_e_r_g_e(1) for more information.

       The history tool presented here, fhist, is a _m_i_n_i_m_a_l history tool.  It
       provides no locking or branching.  This can be useful in contexts where
       the configuration management or change control be being provided by
       some other tool.

RREEFFEERREENNCCEESS
       This program is based on the algorithm in
              _A_n _O_(_N_D_) _D_i_f_f_e_r_e_n_c_e _A_l_g_o_r_i_t_h_m _a_n_d _I_t_s _V_a_r_i_a_t_i_o_n_s, Eugene W.
              Myers, TR 85-6, 10-April-1985, Department of Computer Science,
              The University of Arizona, Tuscon, Arizona 85721.
       See also:
              _A _F_i_l_e _C_o_m_p_a_r_i_s_o_n _P_r_o_g_r_a_m, Webb Miller and Eugene W. Myers,
              Software Practice and Experience, Volume 15, No. 11, November
              1985.

BBUUIILLDDIINNGG
       For complete instructions for host to build these programs, see the
       _B_U_I_L_D_I_N_G file included in this distribution.

AARRCCHHIIVVEE SSIITTEE
       The latest version of _f_h_i_s_t is available on the Web from:

                URL:    http://www.canb.auug.org.au/~millerp/
                File:   fhist.html          # The FHist page.
                File:   fhist-1.16.README   # Description, from the tar file
                File:   fhist-1.16.lsm      # Description, in LSM format
                File:   fhist-1.16.spec     # RedHat package spec
                File:   fhist-1.16.tar.Z    # The complete source.
       FHist is also carried by sunsite.unc.edu in its Linux archives.  You
       will be able to find FHist on any of its mirrors.

                URL:    ftp://sunsite.unc.edu/pub/Linux/devel/vc/
                File:   fhist-1.16.README   # Description, from the tar file
                File:   fhist-1.16.lsm      # Description, in LSM format
                File:   fhist-1.16.spec     # RedHat package spec
                File:   fhist-1.16.tar.Z    # The complete source.
       This site is extensively mirrored around the world, so look for a copy
       near you (you will get much better response).

CCOOPPYYRRIIGGHHTT
       fhist version 1.16.D005
       Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
       2000, 2001, 2002, 2003, 2004, 2005, 2006 Peter Miller; All rights
       reserved.

       This program is derived from a work
       Copyright (C) 1990 David I. Bell.

       This program is free software; you can redistribute it and/or modify it
       under the terms of the GNU General Public License as published by the
       Free Software Foundation; either version 2 of the License, or (at your
       option) any later version.

       This program is distributed in the hope that it will be useful, but
       WITHOUT ANY WARRANTY; without even the implied warranty of
       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
       General Public License for more details.

       You should have received a copy of the GNU General Public License along
       with this program; if not, write to the Free Software Foundation, Inc.,
       59 Temple Place, Suite 330, Boston, MA 02111, USA.

AAUUTTHHOORRSS
       Peter Miller       Web:   http://www.canb.auug.org.au/~millerp
       /\/\*           E-Mail:   millerp@canb.auug.org.au

       David I. Bell      Web:   http://www.canb.auug.org.au/~dbell
                       E-Mail:   dbell@canb.auug.org.au

RREELLEEAASSEE NNOOTTEESS
       For excruciating detail, and also acknowledgements of those who
       generously sent me feedback, please see the _e_t_c_/_C_H_A_N_G_E_S_._1_._1_6 file
       included in this distribution.

       A number of features and bug fixes have been added to _f_h_i_s_t with this
       release.  A few of them are detailed here:

   VVeerrssiioonn 11..1166 ((2200--DDeecc--22000055))
       * There is a new _f_m_e_r_g_e _-_i_g_n_o_r_e_-_i_d_e_n_t_i_c_a_l_-_c_o_n_f_l_i_c_t_s option which may be
       used to suppress logical conflicts in which the same thing is done by
       both variants. This is often a better match for users' expectations for
       merging source code.

   VVeerrssiioonn 11..1155 ((88--NNoovv--22000055))
       * There is a new _f_c_o_m_p _-_n_o_-_b_i_n_a_r_y option, which may be used to prevent
       the comparison of binary files, instead it treats them both as empty.

       * A small build problem on MacOS X has been fixed.

   VVeerrssiioonn 11..1144 ((88--JJuunn--22000044))
       * The ./configure script now understands the --with-nlsdir option, so
       that you can place the .mo files.

       * The _f_h_i_s_t(1) program is now able to cope with numeric modules names.

       * The occasional false negative from test 26 has been fixed.  It was
       failing for some users because of message translation
       (internationalization) issues.

   VVeerrssiioonn 11..1133 ((1133--MMaarr--22000033))
       * A bug has been fixed in some of the tests.  They were susceptible to
       false negatives if the display width changed.

       * All references to the cuserid function have been replaced.  It isn't
       sufficiently portable to be used in real programs.

   VVeerrssiioonn 11..1122 ((2288--NNoovv--22000022))
       * Some build problems have been fixed.

   VVeerrssiioonn 11..1111 ((2266--NNoovv--22000022))
       * Some build problems, relating to modern ANSI C compilers choking on
       K&R function definitions with variable arguments, have been fixed.

       * Two bugs relating to the handling of binary files by _f_h_i_s_t(1) have
       been fixed.

       * A bug which left garbage files behind when a create failed has been
       fixed.

   VVeerrssiioonn 11..1100 ((99--JJuull--22000022))
       * Interrupt handling has been improved.

       * There is a new _f_h_i_s_t _-_N_o___K_e_y_w_o_r_d_s option, used to completely disable
       keyword substitution.

       * Several build problems have been fixed.

   VVeerrssiioonn 11..99 ((2233--OOcctt--22000011))
       No public release.

   VVeerrssiioonn 11..88 ((1166--OOcctt--22000011))
       * There is a new --BBIINNaarryy option for the _f_c_o_m_p(1) program, which
       compares binary files a byte at time, printing the results in
       hexadecimal.

       * The _f_c_o_m_p(1) program now silently copes with CRLF line terminations.

   VVeerrssiioonn 11..77 ((1111--AApprr--22000000))
       * The _f_h_i_s_t_(_1_) _c_o_m_m_a_n_d _n_o_w _h_a_s _a ----bbiinnaarryy _o_p_t_i_o_n_, _w_h_i_c_h _m_a_y _b_e _u_s_e_d _t_o
       _s_t_o_r_e _t_h_e _h_i_s_t_o_r_y _o_f _b_i_n_a_r_y _f_i_l_e_s_.

       * The _f_h_i_s_t(1) command has a new ----mmaakkee--ppaatthh option, which requests
       that the history directory be created if necessary.

       * A bug in _f_h_i_s_t(1) wich caused a SEGFAULT when you used the --tt option
       (extract to terminal) has been fixed.

   VVeerrssiioonn 11..66 ((2255--OOcctt--11999999))
       * An RPM spec file has been added to the distribution.

       * The code is now more robust about what various UNIX systems return
       from pathconf().

       * A bug with the ``_f_c_o_m_p _-_b_l_a_n_k'' option has been fixed.

   VVeerrssiioonn 11..55 ((11--JJuunn--11999999))
       * Binary files are now detected on input, and the utilities file
       gracefully with a warning or error message, as appropriate.

       * Some buffer over-run bugs have been fixed.

       * Several improvements have been made to the portability.

   VVeerrssiioonn 11..44 ((1166--SSeepp--11999988))
       * The install and build procedures have been made more robust, and they
       take note of more of the information provided by GNU Autoconf.

       * The error messages have been internationalized, so it is now possible
       to obtain error messages in your native language.  (If you would like
       to contribute with error message translations, please contact the
       author.)

       * An LSM description has been added, along with a HTML page to present
       it all nicely at the archive site.

       * A RedHat Package Manager spec file has been added, so that a RedHat
       package can be created.  The spec file is in the standard distribution.

   VVeerrssiioonn 11..33 ((2299--MMaarr--11999988))
       This version was not distributed  at all.

   VVeerrssiioonn 11..22
       This version was not distributed very widely.

       * The non-standard isblank function is no longer used, it cause too
       many portability problems.

       * The use of pathconf is not more robust for more operating systems.

   VVeerrssiioonn 11..11
       * The _f_h_i_s_t package now uses a shell script called _c_o_n_f_i_g_u_r_e to
       configure itself.  This script is generated using the _G_N_U _A_u_t_o_c_o_n_f
       utility.  This should make _f_h_i_s_t significantly easier to configure, and
       significantly more portable.

       * A bug has been fixed in the conflict reporting of the _f_m_e_r_g_e program.
       It now correctly opens the conflicts file.

       * The _f_h_i_s_t program now uses _p_a_t_h_c_o_n_f(2) to determine file name length
       limits.



Reference Manual                     FHist                       ReadMe(FHist)
