This is the README file for refinecvs.pl Version 0.76

ABOUT

 refinecvs.pl is pure-perl script, which converts CVS repository
to dump, suitable to load into subversion repository with
`svnadmin load' command.

ADVANTAGES (FEATURES)

 (*) Converts whole CVS repository or only one project (directory).
 (*) Allows to setup any SVN repository configuration.
 
 (*) Detects many errors and corruption in CVS repository.
 (*) Allows to ignore many errors in CVS repository.
 
 (*) Groups commits to make them atomic by author, log message,
     time and branch.
 (*) Set proper dates and authors for checkins.
 (*) Converts CVS keyword substitution modes to `svn:media-type'
     and `svn:keywords' properties.
 (*) Converts `.cvsignore' files into `svn:ignore' properties.
 (*) Adds `svn:executable' property for executable files.
 
 (*) Deletes directory when it becomes empty.

 (*) Converts all branches and tags, including vendors ones.
 (*) Allows to ignore any symbol (branch or tag), ignore any
     vendor objects.
 (*) Creates tags and branches with optimal tree copy operations,
     allowed in SVN.
 (*) Creates tags and branches when it becomes possible, not as
     last operations in dump.    
 (*) Try to resolve branching tree and parents for tags, and 
     resolves it properly in most cases.
 (*) Allows to specify symbols tree by hands in difficult situations.

 (*) Very fast. Don't use any disk storage for internal data.
 (*) Allows to store internal state before passes and resume work
     after adding some options.
 (*) Allows to cache deltas and revisions to speed-up checkouts on
     last pass.
     
 (*) Four levels of output: from few lines about performed steps to
     very verbose semi-debug output.

DISADVANTAGES

 (*) Detects many errors and corruption in CVS repository.
 (*) Don't use any disk storage for internal data. Consume huge
     amount of memory for large repositories.
     
REQUIREMENTS

  This script requires:
  
  (1) perl 5.8.
      Script need 'Encode' module.
      
  (2) Time::Local
      Any version is Ok. Perl 5.6.0 and higher contains it in base
      distribution.
      
  (3) Storable
      Any version is Ok. Perl 5.6.0 and higher contains it in base
      distribution.
      
  (4) Digest::MD5
      Any version is Ok. Perl 5.6.0 and higher contains it in base
      distribution.

USAGE

  refinecvs.pl [options] AUTHOR-FOR-TAGS PATH-TO-CVS-REPO NAME-OF-DUMP

  Please, read output of `refinecvs.pl -h' command for description of
every option.

BUGS

  But here is some items about bug reports:
  
  (0) Read help. Especially, read about `-sp', `-sh' options and
      *events* (options `-e', `-w', `-i').

  (1) Please, read error messages carefully. May be, it is not fatal
      error, but request for your help from script. Many errors could
      be SOLVED with help from you or simply IGNORED, but ALL errors
      ARE ENABLED by default, script works in PARANOID mode by
      default, to avoid broken conversions.
      
  (2) If pass 4 is failed, please, read (0) and (1) twice.
  
      Pass 4 is most complex one and it needs your help, which you could
      provide with `-sp', -`sh' and `-aw' options and DiffSymParent, 
      DiffSymType parameters for `-e', `-w' and `-i' options.

  (3) When error is occurred, if this error is tunable, script shows
      name of corresponding event for you.
  

DISCLAIMER

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
  
  
COPYRIGHT

Copyright (c) 2003-2005 Lev A. Serebryakov <lev@serebryakov.spb.ru>

See LICENSE for details
