hgext/convert/__init__.py
changeset 6798 ceb28b67204e
parent 6666 53465a7464e2
child 6885 6e253aa04ff7
equal deleted inserted replaced
6797:8909070fd05e 6798:ceb28b67204e
    84     -----------------
    84     -----------------
    85 
    85 
    86     --config convert.hg.saverev=True          (boolean)
    86     --config convert.hg.saverev=True          (boolean)
    87         allow target to preserve source revision ID
    87         allow target to preserve source revision ID
    88 
    88 
       
    89     CVS Source
       
    90     ----------
       
    91 
       
    92     CVS source will use a sandbox (i.e. a checked-out copy) from CVS
       
    93     to indicate the starting point of what will be converted. Direct
       
    94     access to the repository files is not needed, unless of course
       
    95     the repository is :local:. The conversion uses the top level
       
    96     directory in the sandbox to find the CVS repository, and then uses
       
    97     CVS rlog commands to find files to convert. This means that unless
       
    98     a filemap is given, all files under the starting directory will be
       
    99     converted, and that any directory reorganisation in the CVS
       
   100     sandbox is ignored.
       
   101 
       
   102     Because CVS does not have changesets, it is necessary to collect
       
   103     individual commits to CVS and merge them into changesets. CVS source
       
   104     can use the external 'cvsps' program (this is a legacy option and may
       
   105     be removed in future) or use its internal changeset merging code.
       
   106     External cvsps is default, and options may be passed to it by setting
       
   107         --config convert.cvsps='cvsps -A -u --cvs-direct -q'
       
   108     The options shown are the defaults.
       
   109 
       
   110     Internal cvsps is selected by setting
       
   111         --config convert.cvsps=builtin
       
   112     and has a few more configurable options:
       
   113         --config convert.cvsps.fuzz=60   (integer)
       
   114             Specify the maximum time (in seconds) that is allowed between
       
   115             commits with identical user and log message in a single
       
   116             changeset. When very large files were checked in as part
       
   117             of a changeset then the default may not be long enough.
       
   118         --config convert.cvsps.mergeto='{{mergetobranch ([-\w]+)}}'
       
   119             Specify a regular expression to which commit log messages are
       
   120             matched. If a match occurs, then the conversion process will
       
   121             insert a dummy revision merging the branch on which this log
       
   122             message occurs to the branch indicated in the regex.
       
   123         --config convert.cvsps.mergefrom='{{mergefrombranch ([-\w]+)}}'
       
   124             Specify a regular expression to which commit log messages are
       
   125             matched. If a match occurs, then the conversion process will
       
   126             add the most recent revision on the branch indicated in the
       
   127             regex as the second parent of the changeset.
       
   128     
       
   129     The hgext/convert/cvsps wrapper script allows the builtin changeset
       
   130     merging code to be run without doing a conversion. Its parameters and
       
   131     output are similar to that of cvsps 2.1.
       
   132 
    89     Subversion Source
   133     Subversion Source
    90     -----------------
   134     -----------------
    91 
   135 
    92     Subversion source detects classical trunk/branches/tags layouts.
   136     Subversion source detects classical trunk/branches/tags layouts.
    93     By default, the supplied "svn://repo/path/" source URL is
   137     By default, the supplied "svn://repo/path/" source URL is