tests/test-convert.out
author Patrick Mezard <pmezard@gmail.com>
Tue, 21 Oct 2008 21:24:47 +0200
changeset 7231 8e7130a10f3b
parent 7170 aff204c9bdd6
child 7236 db6fbb785800
permissions -rw-r--r--
convert: ignore hg source errors with hg.ignoreerrors (issue 1357) This flag makes missing revlog errors to be ignored which allow broken repositories to be fixed by converting them from and to Mercurial.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6238
aac270593ef7 convert: rename MAPFILE into REVMAP to disambiguate with filemap
Patrick Mezard <pmezard@gmail.com>
parents: 6173
diff changeset
     1
hg convert [OPTION]... SOURCE [DEST [REVMAP]]
5441
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
     2
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
     3
Convert a foreign SCM repository to a Mercurial one.
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
     4
6976
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
     5
    Accepted source formats [identifiers]:
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
     6
    - Mercurial [hg]
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
     7
    - CVS [cvs]
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
     8
    - Darcs [darcs]
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
     9
    - git [git]
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
    10
    - Subversion [svn]
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
    11
    - Monotone [mtn]
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
    12
    - GNU Arch [gnuarch]
7053
209ef5f3534c convert: add bzr source
Marek Kubica <marek@xivilization.net>
parents: 6976
diff changeset
    13
    - Bazaar [bzr]
5441
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    14
6976
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
    15
    Accepted destination formats [identifiers]:
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
    16
    - Mercurial [hg]
b072266a83d1 convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents: 6923
diff changeset
    17
    - Subversion [svn] (history on branches is not preserved)
5441
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    18
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    19
    If no revision is given, all revisions will be converted. Otherwise,
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    20
    convert will only import up to the named revision (given in a format
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    21
    understood by the source).
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    22
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    23
    If no destination directory name is specified, it defaults to the
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    24
    basename of the source with '-hg' appended.  If the destination
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    25
    repository doesn't exist, it will be created.
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    26
6238
aac270593ef7 convert: rename MAPFILE into REVMAP to disambiguate with filemap
Patrick Mezard <pmezard@gmail.com>
parents: 6173
diff changeset
    27
    If <REVMAP> isn't given, it will be put in a default location
aac270593ef7 convert: rename MAPFILE into REVMAP to disambiguate with filemap
Patrick Mezard <pmezard@gmail.com>
parents: 6173
diff changeset
    28
    (<dest>/.hg/shamap by default).  The <REVMAP> is a simple text
5441
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    29
    file that maps each source commit ID to the destination ID for
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    30
    that revision, like so:
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    31
    <source ID> <destination ID>
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    32
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    33
    If the file doesn't exist, it's automatically created.  It's updated
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    34
    on each commit copied, so convert-repo can be interrupted and can
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    35
    be run repeatedly to copy new commits.
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    36
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    37
    The [username mapping] file is a simple text file that maps each source
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    38
    commit author to a destination commit author. It is handy for source SCMs
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    39
    that use unix logins to identify authors (eg: CVS). One line per author
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    40
    mapping and the line format is:
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    41
    srcauthor=whatever string you want
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    42
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    43
    The filemap is a file that allows filtering and remapping of files
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    44
    and directories.  Comment lines start with '#'.  Each line can
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    45
    contain one of the following directives:
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    46
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    47
      include path/to/file
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    48
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    49
      exclude path/to/file
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    50
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    51
      rename from/file to/file
5761
07df2a5c02b2 Adjust changed test output after 0145f9afb0e7 (trailing whitespace)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5556
diff changeset
    52
5441
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    53
    The 'include' directive causes a file, or all files under a
5488
247af577fe29 fix typo in convert help text, update test
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 5441
diff changeset
    54
    directory, to be included in the destination repository, and the
247af577fe29 fix typo in convert help text, update test
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 5441
diff changeset
    55
    exclusion of all other files and dirs not explicitely included.
247af577fe29 fix typo in convert help text, update test
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 5441
diff changeset
    56
    The 'exclude' directive causes files or directories to be omitted.
247af577fe29 fix typo in convert help text, update test
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 5441
diff changeset
    57
    The 'rename' directive renames a file or directory.  To rename from a
247af577fe29 fix typo in convert help text, update test
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 5441
diff changeset
    58
    subdirectory into the root of the repository, use '.' as the path to
247af577fe29 fix typo in convert help text, update test
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 5441
diff changeset
    59
    rename to.
5441
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
    60
6148
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    61
    The splicemap is a file that allows insertion of synthetic
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    62
    history, letting you specify the parents of a revision.  This is
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    63
    useful if you want to e.g. give a Subversion merge two parents, or
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    64
    graft two disconnected series of history together.  Each entry
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    65
    contains a key, followed by a space, followed by one or two
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    66
    values, separated by spaces.  The key is the revision ID in the
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    67
    source revision control system whose parents should be modified
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    68
    (same format as a key in .hg/shamap).  The values are the revision
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    69
    IDs (in either the source or destination revision control system)
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    70
    that should be used as the new parents for that node.
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
    71
6170
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
    72
    Mercurial Source
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
    73
    -----------------
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
    74
7231
8e7130a10f3b convert: ignore hg source errors with hg.ignoreerrors (issue 1357)
Patrick Mezard <pmezard@gmail.com>
parents: 7170
diff changeset
    75
    --config convert.hg.ignoreerrors=False (boolean) 
8e7130a10f3b convert: ignore hg source errors with hg.ignoreerrors (issue 1357)
Patrick Mezard <pmezard@gmail.com>
parents: 7170
diff changeset
    76
        ignore integrity errors when reading. Use it to fix Mercurial
8e7130a10f3b convert: ignore hg source errors with hg.ignoreerrors (issue 1357)
Patrick Mezard <pmezard@gmail.com>
parents: 7170
diff changeset
    77
        repositories with missing revlogs, by converting from and to
8e7130a10f3b convert: ignore hg source errors with hg.ignoreerrors (issue 1357)
Patrick Mezard <pmezard@gmail.com>
parents: 7170
diff changeset
    78
        Mercurial.
6170
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
    79
    --config convert.hg.saverev=True          (boolean)
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
    80
        allow target to preserve source revision ID
6885
6e253aa04ff7 convert: implement startrev for hg source
Patrick Mezard <pmezard@gmail.com>
parents: 6798
diff changeset
    81
    --config convert.hg.startrev=0            (hg revision identifier)
6e253aa04ff7 convert: implement startrev for hg source
Patrick Mezard <pmezard@gmail.com>
parents: 6798
diff changeset
    82
        convert start revision and its descendants
6170
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
    83
6798
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    84
    CVS Source
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    85
    ----------
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    86
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    87
    CVS source will use a sandbox (i.e. a checked-out copy) from CVS
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    88
    to indicate the starting point of what will be converted. Direct
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    89
    access to the repository files is not needed, unless of course
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    90
    the repository is :local:. The conversion uses the top level
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    91
    directory in the sandbox to find the CVS repository, and then uses
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    92
    CVS rlog commands to find files to convert. This means that unless
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    93
    a filemap is given, all files under the starting directory will be
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    94
    converted, and that any directory reorganisation in the CVS
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    95
    sandbox is ignored.
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    96
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
    97
    Because CVS does not have changesets, it is necessary to collect
7101
e786192d995d convert: make built-in cvsps the default
Patrick Mezard <pmezard@gmail.com>
parents: 7053
diff changeset
    98
    individual commits to CVS and merge them into changesets. CVS
e786192d995d convert: make built-in cvsps the default
Patrick Mezard <pmezard@gmail.com>
parents: 7053
diff changeset
    99
    source uses its internal changeset merging code by default but can
e786192d995d convert: make built-in cvsps the default
Patrick Mezard <pmezard@gmail.com>
parents: 7053
diff changeset
   100
    be configured to call the external 'cvsps' program by setting:
7170
aff204c9bdd6 convert documentation: --config argument with spaces needs quoting.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7101
diff changeset
   101
        --config convert.cvsps='cvsps -A -u --cvs-direct -q'
7101
e786192d995d convert: make built-in cvsps the default
Patrick Mezard <pmezard@gmail.com>
parents: 7053
diff changeset
   102
    This is a legacy option and may be removed in future.
e786192d995d convert: make built-in cvsps the default
Patrick Mezard <pmezard@gmail.com>
parents: 7053
diff changeset
   103
6798
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   104
    The options shown are the defaults.
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   105
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   106
    Internal cvsps is selected by setting
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   107
        --config convert.cvsps=builtin
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   108
    and has a few more configurable options:
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   109
        --config convert.cvsps.fuzz=60   (integer)
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   110
            Specify the maximum time (in seconds) that is allowed between
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   111
            commits with identical user and log message in a single
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   112
            changeset. When very large files were checked in as part
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   113
            of a changeset then the default may not be long enough.
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   114
        --config convert.cvsps.mergeto='{{mergetobranch ([-\w]+)}}'
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   115
            Specify a regular expression to which commit log messages are
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   116
            matched. If a match occurs, then the conversion process will
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   117
            insert a dummy revision merging the branch on which this log
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   118
            message occurs to the branch indicated in the regex.
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   119
        --config convert.cvsps.mergefrom='{{mergefrombranch ([-\w]+)}}'
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   120
            Specify a regular expression to which commit log messages are
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   121
            matched. If a match occurs, then the conversion process will
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   122
            add the most recent revision on the branch indicated in the
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   123
            regex as the second parent of the changeset.
6923
ebf1462f2145 strip trailing whitespace, replace tabs by spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6885
diff changeset
   124
6798
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   125
    The hgext/convert/cvsps wrapper script allows the builtin changeset
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   126
    merging code to be run without doing a conversion. Its parameters and
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   127
    output are similar to that of cvsps 2.1.
ceb28b67204e convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 6308
diff changeset
   128
6170
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   129
    Subversion Source
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   130
    -----------------
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   131
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   132
    Subversion source detects classical trunk/branches/tags layouts.
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   133
    By default, the supplied "svn://repo/path/" source URL is
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   134
    converted as a single branch. If "svn://repo/path/trunk" exists
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   135
    it replaces the default branch. If "svn://repo/path/branches"
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   136
    exists, its subdirectories are listed as possible branches. If
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   137
    "svn://repo/path/tags" exists, it is looked for tags referencing
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   138
    converted branches. Default "trunk", "branches" and "tags" values
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   139
    can be overriden with following options. Set them to paths
6172
0cd6846e5200 convert: allow svn trunk/branches/tags detection to be skipped
Patrick Mezard <pmezard@gmail.com>
parents: 6170
diff changeset
   140
    relative to the source URL, or leave them blank to disable
0cd6846e5200 convert: allow svn trunk/branches/tags detection to be skipped
Patrick Mezard <pmezard@gmail.com>
parents: 6170
diff changeset
   141
    autodetection.
6170
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   142
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   143
    --config convert.svn.branches=branches    (directory name)
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   144
        specify the directory containing branches
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   145
    --config convert.svn.tags=tags            (directory name)
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   146
        specify the directory containing tags
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   147
    --config convert.svn.trunk=trunk          (directory name)
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   148
        specify the name of the trunk branch
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   149
6173
963000ed8cac convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents: 6172
diff changeset
   150
    Source history can be retrieved starting at a specific revision,
963000ed8cac convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents: 6172
diff changeset
   151
    instead of being integrally converted. Only single branch
963000ed8cac convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents: 6172
diff changeset
   152
    conversions are supported.
963000ed8cac convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents: 6172
diff changeset
   153
963000ed8cac convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents: 6172
diff changeset
   154
    --config convert.svn.startrev=0           (svn revision number)
963000ed8cac convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents: 6172
diff changeset
   155
        specify start Subversion revision.
963000ed8cac convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents: 6172
diff changeset
   156
6170
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   157
    Mercurial Destination
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   158
    ---------------------
5556
61fdf2558c0a convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents: 5513
diff changeset
   159
61fdf2558c0a convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents: 5513
diff changeset
   160
    --config convert.hg.clonebranches=False   (boolean)
6170
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   161
        dispatch source branches in separate clones.
5556
61fdf2558c0a convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents: 5513
diff changeset
   162
    --config convert.hg.tagsbranch=default    (branch name)
6170
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   163
        tag revisions branch name
5556
61fdf2558c0a convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents: 5513
diff changeset
   164
    --config convert.hg.usebranchnames=True   (boolean)
6170
747169c54c68 Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents: 6148
diff changeset
   165
        preserve branch names
5556
61fdf2558c0a convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents: 5513
diff changeset
   166
5441
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   167
options:
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   168
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   169
 -A --authors      username mapping filename
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   170
 -d --dest-type    destination repository type
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   171
    --filemap      remap file names using contents of file
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   172
 -r --rev          import up to target revision REV
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   173
 -s --source-type  source repository type
6148
31d81d476a7f update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 6039
diff changeset
   174
    --splicemap    splice synthesized history into place
5441
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   175
    --datesort     try to sort changesets by date
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   176
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   177
use "hg -v help convert" to show global options
5015
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   178
adding a
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   179
assuming destination a-hg
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   180
initializing destination a-hg repository
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   181
scanning source...
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   182
sorting...
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   183
converting...
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   184
4 a
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   185
3 b
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   186
2 c
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   187
1 d
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   188
0 e
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   189
pulling from ../a
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   190
searching for changes
cb100605a516 convert: add test
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   191
no changes found
5441
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   192
% should fail
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   193
initializing destination bogusfile repository
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   194
abort: cannot create new bundle repository
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   195
% should fail
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   196
abort: Permission denied: bogusdir
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   197
% should succeed
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   198
initializing destination bogusdir repository
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   199
scanning source...
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   200
sorting...
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   201
converting...
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   202
4 a
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   203
3 b
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   204
2 c
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   205
1 d
71e7c86adcb7 convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents: 5015
diff changeset
   206
0 e
5805
e422305e0853 test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents: 5761
diff changeset
   207
% test pre and post conversion actions
e422305e0853 test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents: 5761
diff changeset
   208
run hg source pre-conversion action
e422305e0853 test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents: 5761
diff changeset
   209
run hg sink pre-conversion action
e422305e0853 test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents: 5761
diff changeset
   210
run hg sink post-conversion action
e422305e0853 test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents: 5761
diff changeset
   211
run hg source post-conversion action