author | Nicolas Dumazet <nicdumz.commits@gmail.com> |
Mon, 04 May 2009 17:06:59 +0900 | |
changeset 8321 | ec985dcfd7da |
parent 8222 | d30a21594812 |
child 8377 | 29f4f0d66cd5 |
permissions | -rw-r--r-- |
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 |
|
7598 | 3 |
convert a foreign SCM repository to a Mercurial one. |
5441
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] |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
14 |
- Perforce [p4] |
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
15 |
|
6976
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
16 |
Accepted destination formats [identifiers]: |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
17 |
- Mercurial [hg] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
18 |
- 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
|
19 |
|
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
20 |
If no revision is given, all revisions will be converted. |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
21 |
Otherwise, convert will only import up to the named revision |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
22 |
(given in a format understood by the source). |
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
23 |
|
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
24 |
If no destination directory name is specified, it defaults to the |
7983
7b813bdbd5d0
Change double spaces to single spaces in help texts.
Martin Geisler <mg@daimi.au.dk>
parents:
7973
diff
changeset
|
25 |
basename of the source with '-hg' appended. If the destination |
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
26 |
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
|
27 |
|
6238
aac270593ef7
convert: rename MAPFILE into REVMAP to disambiguate with filemap
Patrick Mezard <pmezard@gmail.com>
parents:
6173
diff
changeset
|
28 |
If <REVMAP> isn't given, it will be put in a default location |
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
29 |
(<dest>/.hg/shamap by default). The <REVMAP> is a simple text file |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
30 |
that maps each source commit ID to the destination ID for that |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
31 |
revision, like so: |
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
32 |
<source ID> <destination ID> |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
33 |
|
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
34 |
If the file doesn't exist, it's automatically created. It's |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
35 |
updated on each commit copied, so convert-repo can be interrupted |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
36 |
and can be run repeatedly to copy new commits. |
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
37 |
|
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
38 |
The [username mapping] file is a simple text file that maps each |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
39 |
source commit author to a destination commit author. It is handy |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
40 |
for source SCMs that use unix logins to identify authors (eg: |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
41 |
CVS). One line per author mapping and the line format is: |
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
42 |
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
|
43 |
|
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
44 |
The filemap is a file that allows filtering and remapping of files |
7983
7b813bdbd5d0
Change double spaces to single spaces in help texts.
Martin Geisler <mg@daimi.au.dk>
parents:
7973
diff
changeset
|
45 |
and directories. Comment lines start with '#'. Each line can |
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
46 |
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
|
47 |
|
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
48 |
include path/to/file |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
49 |
|
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
50 |
exclude path/to/file |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
51 |
|
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
52 |
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
|
53 |
|
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
54 |
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
|
55 |
directory, to be included in the destination repository, and the |
8026
683d8ebcf434
expand "dir" to "directory" in help texts
Martin Geisler <mg@lazybytes.net>
parents:
8010
diff
changeset
|
56 |
exclusion of all other files and directories not explicitely included. |
5488
247af577fe29
fix typo in convert help text, update test
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
5441
diff
changeset
|
57 |
The 'exclude' directive causes files or directories to be omitted. |
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
58 |
The 'rename' directive renames a file or directory. To rename from |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
59 |
a subdirectory into the root of the repository, use '.' as the |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
60 |
path to rename to. |
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
61 |
|
6148
31d81d476a7f
update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
6039
diff
changeset
|
62 |
The splicemap is a file that allows insertion of synthetic |
7983
7b813bdbd5d0
Change double spaces to single spaces in help texts.
Martin Geisler <mg@daimi.au.dk>
parents:
7973
diff
changeset
|
63 |
history, letting you specify the parents of a revision. This is |
6148
31d81d476a7f
update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
6039
diff
changeset
|
64 |
useful if you want to e.g. give a Subversion merge two parents, or |
7983
7b813bdbd5d0
Change double spaces to single spaces in help texts.
Martin Geisler <mg@daimi.au.dk>
parents:
7973
diff
changeset
|
65 |
graft two disconnected series of history together. Each entry |
6148
31d81d476a7f
update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
6039
diff
changeset
|
66 |
contains a key, followed by a space, followed by one or two |
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
67 |
comma-separated values. The key is the revision ID in the source |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
68 |
revision control system whose parents should be modified (same |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
69 |
format as a key in .hg/shamap). The values are the revision IDs |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
70 |
(in either the source or destination revision control system) that |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
71 |
should be used as the new parents for that node. |
6148
31d81d476a7f
update output of test-convert
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
6039
diff
changeset
|
72 |
|
6170
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
73 |
Mercurial Source |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
74 |
----------------- |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
75 |
|
8010
58ba4b86ae13
convert: align option types in help text
Martin Geisler <mg@daimi.au.dk>
parents:
7989
diff
changeset
|
76 |
--config convert.hg.ignoreerrors=False (boolean) |
7231
8e7130a10f3b
convert: ignore hg source errors with hg.ignoreerrors (issue 1357)
Patrick Mezard <pmezard@gmail.com>
parents:
7170
diff
changeset
|
77 |
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
|
78 |
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
|
79 |
Mercurial. |
8010
58ba4b86ae13
convert: align option types in help text
Martin Geisler <mg@daimi.au.dk>
parents:
7989
diff
changeset
|
80 |
--config convert.hg.saverev=False (boolean) |
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
81 |
store original revision ID in changeset (forces target IDs to |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
82 |
change) |
6885
6e253aa04ff7
convert: implement startrev for hg source
Patrick Mezard <pmezard@gmail.com>
parents:
6798
diff
changeset
|
83 |
--config convert.hg.startrev=0 (hg revision identifier) |
6e253aa04ff7
convert: implement startrev for hg source
Patrick Mezard <pmezard@gmail.com>
parents:
6798
diff
changeset
|
84 |
convert start revision and its descendants |
6170
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
85 |
|
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
86 |
CVS Source |
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
87 |
---------- |
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
88 |
|
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
89 |
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
|
90 |
to indicate the starting point of what will be converted. Direct |
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
91 |
access to the repository files is not needed, unless of course the |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
92 |
repository is :local:. The conversion uses the top level directory |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
93 |
in the sandbox to find the CVS repository, and then uses CVS rlog |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
94 |
commands to find files to convert. This means that unless a |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
95 |
filemap is given, all files under the starting directory will be |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
96 |
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
|
97 |
sandbox is ignored. |
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
98 |
|
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
99 |
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
|
100 |
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
|
101 |
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
|
102 |
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
|
103 |
--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
|
104 |
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
|
105 |
|
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
106 |
The options shown are the defaults. |
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
107 |
|
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
108 |
Internal cvsps is selected by setting |
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
109 |
--config convert.cvsps=builtin |
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
110 |
and has a few more configurable options: |
8169
6584953be356
convert/cvs: add an option to disable remote log caching
Patrick Mezard <pmezard@gmail.com>
parents:
8026
diff
changeset
|
111 |
--config convert.cvsps.cache=True (boolean) |
8222
d30a21594812
more whitespace cleanup and some other style nits
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
8169
diff
changeset
|
112 |
Set to False to disable remote log caching, for testing and |
8169
6584953be356
convert/cvs: add an option to disable remote log caching
Patrick Mezard <pmezard@gmail.com>
parents:
8026
diff
changeset
|
113 |
debugging purposes. |
8010
58ba4b86ae13
convert: align option types in help text
Martin Geisler <mg@daimi.au.dk>
parents:
7989
diff
changeset
|
114 |
--config convert.cvsps.fuzz=60 (integer) |
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
115 |
Specify the maximum time (in seconds) that is allowed |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
116 |
between commits with identical user and log message in a |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
117 |
single changeset. When very large files were checked in as |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
118 |
part of a changeset then the default may not be long |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
119 |
enough. |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
120 |
--config convert.cvsps.mergeto='{{mergetobranch ([-\w]+)}}' |
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
121 |
Specify a regular expression to which commit log messages |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
122 |
are matched. If a match occurs, then the conversion |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
123 |
process will insert a dummy revision merging the branch on |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
124 |
which this log message occurs to the branch indicated in |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
125 |
the regex. |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
126 |
--config convert.cvsps.mergefrom='{{mergefrombranch ([-\w]+)}}' |
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
127 |
Specify a regular expression to which commit log messages |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
128 |
are matched. If a match occurs, then the conversion |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
129 |
process will add the most recent revision on the branch |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
130 |
indicated in the regex as the second parent of the |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
131 |
changeset. |
6923
ebf1462f2145
strip trailing whitespace, replace tabs by spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6885
diff
changeset
|
132 |
|
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
133 |
The hgext/convert/cvsps wrapper script allows the builtin |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
134 |
changeset merging code to be run without doing a conversion. Its |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
135 |
parameters and output are similar to that of cvsps 2.1. |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6308
diff
changeset
|
136 |
|
6170
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
137 |
Subversion Source |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
138 |
----------------- |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
139 |
|
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
140 |
Subversion source detects classical trunk/branches/tags layouts. |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
141 |
By default, the supplied "svn://repo/path/" source URL is |
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
142 |
converted as a single branch. If "svn://repo/path/trunk" exists it |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
143 |
replaces the default branch. If "svn://repo/path/branches" exists, |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
144 |
its subdirectories are listed as possible branches. If |
6170
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
145 |
"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
|
146 |
converted branches. Default "trunk", "branches" and "tags" values |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
147 |
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
|
148 |
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
|
149 |
autodetection. |
6170
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
150 |
|
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
151 |
--config convert.svn.branches=branches (directory name) |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
152 |
specify the directory containing branches |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
153 |
--config convert.svn.tags=tags (directory name) |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
154 |
specify the directory containing tags |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
155 |
--config convert.svn.trunk=trunk (directory name) |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
156 |
specify the name of the trunk branch |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
157 |
|
6173
963000ed8cac
convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents:
6172
diff
changeset
|
158 |
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
|
159 |
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
|
160 |
conversions are supported. |
963000ed8cac
convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents:
6172
diff
changeset
|
161 |
|
963000ed8cac
convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents:
6172
diff
changeset
|
162 |
--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
|
163 |
specify start Subversion revision. |
963000ed8cac
convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents:
6172
diff
changeset
|
164 |
|
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
165 |
Perforce Source |
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
166 |
--------------- |
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
167 |
|
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
168 |
The Perforce (P4) importer can be given a p4 depot path or a |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
169 |
client specification as source. It will convert all files in the |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
170 |
source to a flat Mercurial repository, ignoring labels, branches |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
171 |
and integrations. Note that when a depot path is given you then |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
172 |
usually should specify a target directory, because otherwise the |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
173 |
target may be named ...-hg. |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
174 |
|
7989
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
175 |
It is possible to limit the amount of source history to be |
468ab22785aa
convert: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7983
diff
changeset
|
176 |
converted by specifying an initial Perforce revision. |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
177 |
|
8010
58ba4b86ae13
convert: align option types in help text
Martin Geisler <mg@daimi.au.dk>
parents:
7989
diff
changeset
|
178 |
--config convert.p4.startrev=0 (perforce changelist number) |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
179 |
specify initial Perforce revision. |
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
180 |
|
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
181 |
|
6170
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
182 |
Mercurial Destination |
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
183 |
--------------------- |
5556
61fdf2558c0a
convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents:
5513
diff
changeset
|
184 |
|
61fdf2558c0a
convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents:
5513
diff
changeset
|
185 |
--config convert.hg.clonebranches=False (boolean) |
6170
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
186 |
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
|
187 |
--config convert.hg.tagsbranch=default (branch name) |
6170
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
188 |
tag revisions branch name |
5556
61fdf2558c0a
convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents:
5513
diff
changeset
|
189 |
--config convert.hg.usebranchnames=True (boolean) |
6170
747169c54c68
Fix test-convert.out after 55455556f921
Patrick Mezard <pmezard@gmail.com>
parents:
6148
diff
changeset
|
190 |
preserve branch names |
5556
61fdf2558c0a
convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents:
5513
diff
changeset
|
191 |
|
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
192 |
options: |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
193 |
|
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
194 |
-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
|
195 |
-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
|
196 |
--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
|
197 |
-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
|
198 |
-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
|
199 |
--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
|
200 |
--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
|
201 |
|
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
202 |
use "hg -v help convert" to show global options |
5015 | 203 |
adding a |
204 |
assuming destination a-hg |
|
205 |
initializing destination a-hg repository |
|
206 |
scanning source... |
|
207 |
sorting... |
|
208 |
converting... |
|
209 |
4 a |
|
210 |
3 b |
|
211 |
2 c |
|
212 |
1 d |
|
213 |
0 e |
|
214 |
pulling from ../a |
|
215 |
searching for changes |
|
216 |
no changes found |
|
5441
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
217 |
% should fail |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
218 |
initializing destination bogusfile repository |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
219 |
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
|
220 |
% should fail |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
221 |
abort: Permission denied: bogusdir |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
222 |
% should succeed |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
223 |
initializing destination bogusdir repository |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
224 |
scanning source... |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
225 |
sorting... |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
226 |
converting... |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
227 |
4 a |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
228 |
3 b |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
229 |
2 c |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
230 |
1 d |
71e7c86adcb7
convert: refactor sink initialisation, to remove hardcoding of hg
Bryan O'Sullivan <bos@serpentine.com>
parents:
5015
diff
changeset
|
231 |
0 e |
5805
e422305e0853
test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents:
5761
diff
changeset
|
232 |
% test pre and post conversion actions |
e422305e0853
test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents:
5761
diff
changeset
|
233 |
run hg source pre-conversion action |
e422305e0853
test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents:
5761
diff
changeset
|
234 |
run hg sink pre-conversion action |
e422305e0853
test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents:
5761
diff
changeset
|
235 |
run hg sink post-conversion action |
e422305e0853
test-convert: test before() and after() conversion actions
Patrick Mezard <pmezard@gmail.com>
parents:
5761
diff
changeset
|
236 |
run hg source post-conversion action |
7905
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
237 |
% converting empty dir should fail nicely |
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
238 |
assuming destination emptydir-hg |
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
239 |
initializing destination emptydir-hg repository |
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
240 |
emptydir does not look like a CVS checkout |
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
241 |
emptydir does not look like a Git repo |
7973
db3a68fd9387
convert: attempt to check repo type before checking for tool
Matt Mackall <mpm@selenic.com>
parents:
7931
diff
changeset
|
242 |
emptydir does not look like a Subversion repo |
7905
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
243 |
emptydir is not a local Mercurial repo |
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
244 |
emptydir does not look like a darcs repo |
7973
db3a68fd9387
convert: attempt to check repo type before checking for tool
Matt Mackall <mpm@selenic.com>
parents:
7931
diff
changeset
|
245 |
emptydir does not look like a monotone repo |
7905
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
246 |
emptydir does not look like a GNU Arch repo |
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
247 |
emptydir does not look like a Bazaar repo |
7973
db3a68fd9387
convert: attempt to check repo type before checking for tool
Matt Mackall <mpm@selenic.com>
parents:
7931
diff
changeset
|
248 |
emptydir does not look like a P4 repo |
7905
d596b1f2935a
convert: missing p4 tool is only slightly fatal
Mads Kiilerich <mads@kiilerich.com>
parents:
7823
diff
changeset
|
249 |
abort: emptydir: missing or unsupported repository |