Mercurial > hg
annotate hgext/convert/__init__.py @ 17757:fec69c72e2b4
merge with durin42
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Fri, 12 Oct 2012 15:52:59 -0500 |
parents | e7cfe3587ea4 |
children | 337d728e644f c51d2bc7a5d7 |
rev | line source |
---|---|
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
1 # convert.py Foreign SCM converter |
3917
645e1dd4b8ae
convert-repo: update usage information
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3911
diff
changeset
|
2 # |
4635
63b9d2deed48
Updated copyright notices and add "and others" to "hg version"
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4591
diff
changeset
|
3 # Copyright 2005-2007 Matt Mackall <mpm@selenic.com> |
316 | 4 # |
8225
46293a0c7e9f
updated license to be explicit about GPL version 2
Martin Geisler <mg@lazybytes.net>
parents:
8222
diff
changeset
|
5 # This software may be used and distributed according to the terms of the |
10263 | 6 # GNU General Public License version 2 or any later version. |
8228
eee2319c5895
add blank line after copyright notices and after header
Martin Geisler <mg@lazybytes.net>
parents:
8225
diff
changeset
|
7 |
8932
f87884329419
extensions: fix up description lines some more
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
8894
diff
changeset
|
8 '''import revisions from foreign VCS repositories into Mercurial''' |
316 | 9 |
5621
badbefa55972
convert: move commands definition to ease demandload job (issue 860)
Patrick Mezard <pmezard@gmail.com>
parents:
5521
diff
changeset
|
10 import convcmd |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
11 import cvsps |
7873
4a4c7f6a5912
cleanup: drop unused imports
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
7823
diff
changeset
|
12 import subversion |
13691
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
13 from mercurial import commands, templatekw |
6999
f1546aa94362
i18n, convert: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6976
diff
changeset
|
14 from mercurial.i18n import _ |
316 | 15 |
16743
38caf405d010
hgext: mark all first-party extensions as such
Augie Fackler <raf@durin42.com>
parents:
16683
diff
changeset
|
16 testedwith = 'internal' |
38caf405d010
hgext: mark all first-party extensions as such
Augie Fackler <raf@durin42.com>
parents:
16683
diff
changeset
|
17 |
5621
badbefa55972
convert: move commands definition to ease demandload job (issue 860)
Patrick Mezard <pmezard@gmail.com>
parents:
5521
diff
changeset
|
18 # Commands definition was moved elsewhere to ease demandload job. |
694 | 19 |
5281
a176f9c8b26e
convert: rename a class and a function
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5256
diff
changeset
|
20 def convert(ui, src, dest=None, revmapfile=None, **opts): |
7598 | 21 """convert a foreign SCM repository to a Mercurial one. |
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
22 |
6976
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
23 Accepted source formats [identifiers]: |
9157
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
24 |
6976
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
25 - Mercurial [hg] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
26 - CVS [cvs] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
27 - Darcs [darcs] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
28 - git [git] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
29 - Subversion [svn] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
30 - Monotone [mtn] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
31 - GNU Arch [gnuarch] |
7053
209ef5f3534c
convert: add bzr source
Marek Kubica <marek@xivilization.net>
parents:
6999
diff
changeset
|
32 - Bazaar [bzr] |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
33 - Perforce [p4] |
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
34 |
6976
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
35 Accepted destination formats [identifiers]: |
9157
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
36 |
6976
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
37 - Mercurial [hg] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
38 - Subversion [svn] (history on branches is not preserved) |
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
39 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
40 If no revision is given, all revisions will be converted. |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
41 Otherwise, convert will only import up to the named revision |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
42 (given in a format understood by the source). |
4760
07efcce17d28
convert: add -r argument specifying latest revision to convert
Brendan Cully <brendan@kublai.com>
parents:
4719
diff
changeset
|
43 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
44 If no destination directory name is specified, it defaults to the |
12185
6a94459b7afa
convert: better quoting in help text
Martin Geisler <mg@lazybytes.net>
parents:
12184
diff
changeset
|
45 basename of the source with ``-hg`` appended. If the destination |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
46 repository doesn't exist, it will be created. |
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
47 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
48 By default, all sources except Mercurial will use --branchsort. |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
49 Mercurial uses --sourcesort to preserve original revision numbers |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
50 order. Sort modes have the following effects: |
9103
9c7a5d70e72f
convert: fix inconsistent indentation in help text
Martin Geisler <mg@lazybytes.net>
parents:
9086
diff
changeset
|
51 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
52 --branchsort convert from parent to child revision when possible, |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
53 which means branches are usually converted one after |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
54 the other. It generates more compact repositories. |
9157
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
55 |
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
56 --datesort sort revisions by date. Converted repositories have |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
57 good-looking changelogs but are often an order of |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
58 magnitude larger than the same ones generated by |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
59 --branchsort. |
9157
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
60 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
61 --sourcesort try to preserve source revisions order, only |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
62 supported by Mercurial sources. |
8692
827d4e807d57
convert: default revisions order depends on source
Patrick Mezard <pmezard@gmail.com>
parents:
8690
diff
changeset
|
63 |
12924
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
64 If ``REVMAP`` isn't given, it will be put in a default location |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
65 (``<dest>/.hg/shamap`` by default). The ``REVMAP`` is a simple |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
66 text file that maps each source commit ID to the destination ID |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
67 for that revision, like so:: |
9058
b10cee4bd2c1
convert: wrapped docstrings at 78 characters
Martin Geisler <mg@lazybytes.net>
parents:
8932
diff
changeset
|
68 |
9157
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
69 <source ID> <destination ID> |
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
70 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
71 If the file doesn't exist, it's automatically created. It's |
12186
3417b3d95b05
convert: help string cleanups
Martin Geisler <mg@lazybytes.net>
parents:
12185
diff
changeset
|
72 updated on each commit copied, so :hg:`convert` can be interrupted |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
73 and can be run repeatedly to copy new commits. |
4589
451e91ed535e
convert extension: Add support for username mapping
Edouard Gomez <ed.gomez@free.fr>
parents:
4588
diff
changeset
|
74 |
12198
0c67a58f0580
convert: deprecate --authors in preference for --authormap
Martin Geisler <mg@lazybytes.net>
parents:
12188
diff
changeset
|
75 The authormap is a simple text file that maps each source commit |
0c67a58f0580
convert: deprecate --authors in preference for --authormap
Martin Geisler <mg@lazybytes.net>
parents:
12188
diff
changeset
|
76 author to a destination commit author. It is handy for source SCMs |
17424
e7cfe3587ea4
fix trivial spelling errors
Mads Kiilerich <mads@kiilerich.com>
parents:
17267
diff
changeset
|
77 that use unix logins to identify authors (e.g.: CVS). One line per |
12198
0c67a58f0580
convert: deprecate --authors in preference for --authormap
Martin Geisler <mg@lazybytes.net>
parents:
12188
diff
changeset
|
78 author mapping and the line format is:: |
12184
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
79 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
80 source author = destination author |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
81 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
82 Empty lines and lines starting with a ``#`` are ignored. |
5256
0b0caffcf175
convert: document filemap.
Bryan O'Sullivan <bos@serpentine.com>
parents:
5204
diff
changeset
|
83 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
84 The filemap is a file that allows filtering and remapping of files |
11523
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
85 and directories. Each line can contain one of the following |
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
86 directives:: |
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
87 |
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
88 include path/to/file-or-dir |
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
89 |
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
90 exclude path/to/file-or-dir |
5256
0b0caffcf175
convert: document filemap.
Bryan O'Sullivan <bos@serpentine.com>
parents:
5204
diff
changeset
|
91 |
11523
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
92 rename path/to/source path/to/destination |
5256
0b0caffcf175
convert: document filemap.
Bryan O'Sullivan <bos@serpentine.com>
parents:
5204
diff
changeset
|
93 |
12188 | 94 Comment lines start with ``#``. A specified path matches if it |
11523
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
95 equals the full relative name of a file or one of its parent |
12185
6a94459b7afa
convert: better quoting in help text
Martin Geisler <mg@lazybytes.net>
parents:
12184
diff
changeset
|
96 directories. The ``include`` or ``exclude`` directive with the |
6a94459b7afa
convert: better quoting in help text
Martin Geisler <mg@lazybytes.net>
parents:
12184
diff
changeset
|
97 longest matching path applies, so line order does not matter. |
5760
0145f9afb0e7
Removed tabs and trailing whitespace in python files
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5632
diff
changeset
|
98 |
12185
6a94459b7afa
convert: better quoting in help text
Martin Geisler <mg@lazybytes.net>
parents:
12184
diff
changeset
|
99 The ``include`` directive causes a file, or all files under a |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
100 directory, to be included in the destination repository, and the |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
101 exclusion of all other files and directories not explicitly |
12185
6a94459b7afa
convert: better quoting in help text
Martin Geisler <mg@lazybytes.net>
parents:
12184
diff
changeset
|
102 included. The ``exclude`` directive causes files or directories to |
6a94459b7afa
convert: better quoting in help text
Martin Geisler <mg@lazybytes.net>
parents:
12184
diff
changeset
|
103 be omitted. The ``rename`` directive renames a file or directory if |
11685 | 104 it is converted. To rename from a subdirectory into the root of |
12188 | 105 the repository, use ``.`` as the path to rename to. |
5556
61fdf2558c0a
convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents:
5554
diff
changeset
|
106 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
107 The splicemap is a file that allows insertion of synthetic |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
108 history, letting you specify the parents of a revision. This is |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
109 useful if you want to e.g. give a Subversion merge two parents, or |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
110 graft two disconnected series of history together. Each entry |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
111 contains a key, followed by a space, followed by one or two |
12184
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
112 comma-separated values:: |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
113 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
114 key parent1, parent2 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
115 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
116 The key is the revision ID in the source |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
117 revision control system whose parents should be modified (same |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
118 format as a key in .hg/shamap). The values are the revision IDs |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
119 (in either the source or destination revision control system) that |
9634
fbde669564d8
convert: document parent order in splicemap help (issue1764)
Martin Geisler <mg@lazybytes.net>
parents:
9543
diff
changeset
|
120 should be used as the new parents for that node. For example, if |
fbde669564d8
convert: document parent order in splicemap help (issue1764)
Martin Geisler <mg@lazybytes.net>
parents:
9543
diff
changeset
|
121 you have merged "release-1.0" into "trunk", then you should |
fbde669564d8
convert: document parent order in splicemap help (issue1764)
Martin Geisler <mg@lazybytes.net>
parents:
9543
diff
changeset
|
122 specify the revision on "trunk" as the first parent and the one on |
fbde669564d8
convert: document parent order in splicemap help (issue1764)
Martin Geisler <mg@lazybytes.net>
parents:
9543
diff
changeset
|
123 the "release-1.0" branch as the second. |
6143
5b159ebb19cf
convert: document splicemap, allow setting of multiple parents
Bryan O'Sullivan <bos@serpentine.com>
parents:
6035
diff
changeset
|
124 |
8377
29f4f0d66cd5
convert: adding branchmap functionality to convert extension
Michael J. Pedersen <m.pedersen@icelus.org>
parents:
8228
diff
changeset
|
125 The branchmap is a file that allows you to rename a branch when it is |
29f4f0d66cd5
convert: adding branchmap functionality to convert extension
Michael J. Pedersen <m.pedersen@icelus.org>
parents:
8228
diff
changeset
|
126 being brought in from whatever external repository. When used in |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
127 conjunction with a splicemap, it allows for a powerful combination |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
128 to help fix even the most badly mismanaged repositories and turn them |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
129 into nicely structured Mercurial repositories. The branchmap contains |
12184
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
130 lines of the form:: |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
131 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
132 original_branch_name new_branch_name |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
133 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
134 where "original_branch_name" is the name of the branch in the |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
135 source repository, and "new_branch_name" is the name of the branch |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
136 is the destination repository. No whitespace is allowed in the |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
137 branch names. This can be used to (for instance) move code in one |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
138 repository from "default" to a named branch. |
8377
29f4f0d66cd5
convert: adding branchmap functionality to convert extension
Michael J. Pedersen <m.pedersen@icelus.org>
parents:
8228
diff
changeset
|
139 |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
140 Mercurial Source |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
141 ################ |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
142 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
143 The Mercurial source recognizes the following configuration |
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
144 options, which you can set on the command line with ``--config``: |
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
145 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
146 :convert.hg.ignoreerrors: ignore integrity errors when reading. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
147 Use it to fix Mercurial repositories with missing revlogs, by |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
148 converting from and to Mercurial. Default is False. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
149 |
13429
0079fb98e8d0
convert: fix typos in docstring
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
12924
diff
changeset
|
150 :convert.hg.saverev: store original revision ID in changeset |
15300 | 151 (forces target IDs to change). It takes a boolean argument and |
152 defaults to False. | |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
153 |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
154 :convert.hg.startrev: convert start revision and its descendants. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
155 It takes a hg revision identifier and defaults to 0. |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
156 |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6666
diff
changeset
|
157 CVS Source |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
158 ########## |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6666
diff
changeset
|
159 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
160 CVS source will use a sandbox (i.e. a checked-out copy) from CVS |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
161 to indicate the starting point of what will be converted. Direct |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
162 access to the repository files is not needed, unless of course the |
12924
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
163 repository is ``:local:``. The conversion uses the top level |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
164 directory in the sandbox to find the CVS repository, and then uses |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
165 CVS rlog commands to find files to convert. This means that unless |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
166 a filemap is given, all files under the starting directory will be |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
167 converted, and that any directory reorganization in the CVS |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
168 sandbox is ignored. |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6666
diff
changeset
|
169 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
170 The following options can be used with ``--config``: |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6666
diff
changeset
|
171 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
172 :convert.cvsps.cache: Set to False to disable remote log caching, |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
173 for testing and debugging purposes. Default is True. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
174 |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
175 :convert.cvsps.fuzz: Specify the maximum time (in seconds) that is |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
176 allowed between commits with identical user and log message in |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
177 a single changeset. When very large files were checked in as |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
178 part of a changeset then the default may not be long enough. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
179 The default is 60. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
180 |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
181 :convert.cvsps.mergeto: Specify a regular expression to which |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
182 commit log messages are matched. If a match occurs, then the |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
183 conversion process will insert a dummy revision merging the |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
184 branch on which this log message occurs to the branch |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
185 indicated in the regex. Default is ``{{mergetobranch |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
186 ([-\\w]+)}}`` |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
187 |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
188 :convert.cvsps.mergefrom: Specify a regular expression to which |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
189 commit log messages are matched. If a match occurs, then the |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
190 conversion process will add the most recent revision on the |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
191 branch indicated in the regex as the second parent of the |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
192 changeset. Default is ``{{mergefrombranch ([-\\w]+)}}`` |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
193 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
194 :hook.cvslog: Specify a Python function to be called at the end of |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
195 gathering the CVS log. The function is passed a list with the |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
196 log entries, and can modify the entries in-place, or add or |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
197 delete them. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
198 |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
199 :hook.cvschangesets: Specify a Python function to be called after |
17251
98166640b356
help: fix some instances of 'the the'
Mads Kiilerich <mads@kiilerich.com>
parents:
16743
diff
changeset
|
200 the changesets are calculated from the CVS log. The |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
201 function is passed a list with the changeset entries, and can |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
202 modify the changesets in-place, or add or delete them. |
6923
ebf1462f2145
strip trailing whitespace, replace tabs by spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6885
diff
changeset
|
203 |
9472
a15813fae0a8
convert/cvs: update debugcvsps documentation
Patrick Mezard <pmezard@gmail.com>
parents:
9256
diff
changeset
|
204 An additional "debugcvsps" Mercurial command allows the builtin |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
205 changeset merging code to be run without doing a conversion. Its |
9472
a15813fae0a8
convert/cvs: update debugcvsps documentation
Patrick Mezard <pmezard@gmail.com>
parents:
9256
diff
changeset
|
206 parameters and output are similar to that of cvsps 2.1. Please see |
a15813fae0a8
convert/cvs: update debugcvsps documentation
Patrick Mezard <pmezard@gmail.com>
parents:
9256
diff
changeset
|
207 the command help for more details. |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6666
diff
changeset
|
208 |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
209 Subversion Source |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
210 ################# |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
211 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
212 Subversion source detects classical trunk/branches/tags layouts. |
12924
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
213 By default, the supplied ``svn://repo/path/`` source URL is |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
214 converted as a single branch. If ``svn://repo/path/trunk`` exists |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
215 it replaces the default branch. If ``svn://repo/path/branches`` |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
216 exists, its subdirectories are listed as possible branches. If |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
217 ``svn://repo/path/tags`` exists, it is looked for tags referencing |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
218 converted branches. Default ``trunk``, ``branches`` and ``tags`` |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
219 values can be overridden with following options. Set them to paths |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
220 relative to the source URL, or leave them blank to disable auto |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
221 detection. |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
222 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
223 The following options can be set with ``--config``: |
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
224 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
225 :convert.svn.branches: specify the directory containing branches. |
13494
3178aca36b0f
convert.svn: branch name which equals trunk means `default' branch (issue2653)
Pavel Boldin <boldin.pavel@gmail.com>
parents:
13429
diff
changeset
|
226 The default is ``branches``. |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
227 |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
228 :convert.svn.tags: specify the directory containing tags. The |
12924
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
229 default is ``tags``. |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
230 |
13494
3178aca36b0f
convert.svn: branch name which equals trunk means `default' branch (issue2653)
Pavel Boldin <boldin.pavel@gmail.com>
parents:
13429
diff
changeset
|
231 :convert.svn.trunk: specify the name of the trunk branch. The |
3178aca36b0f
convert.svn: branch name which equals trunk means `default' branch (issue2653)
Pavel Boldin <boldin.pavel@gmail.com>
parents:
13429
diff
changeset
|
232 default is ``trunk``. |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
233 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
234 Source history can be retrieved starting at a specific revision, |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
235 instead of being integrally converted. Only single branch |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
236 conversions are supported. |
6173
963000ed8cac
convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents:
6172
diff
changeset
|
237 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
238 :convert.svn.startrev: specify start Subversion revision number. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
239 The default is 0. |
6173
963000ed8cac
convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents:
6172
diff
changeset
|
240 |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
241 Perforce Source |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
242 ############### |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
243 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
244 The Perforce (P4) importer can be given a p4 depot path or a |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
245 client specification as source. It will convert all files in the |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
246 source to a flat Mercurial repository, ignoring labels, branches |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
247 and integrations. Note that when a depot path is given you then |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
248 usually should specify a target directory, because otherwise the |
12924
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
249 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
|
250 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
251 It is possible to limit the amount of source history to be |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
252 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
|
253 |
13429
0079fb98e8d0
convert: fix typos in docstring
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
12924
diff
changeset
|
254 :convert.p4.startrev: specify initial Perforce revision (a |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
255 Perforce changelist number). |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
256 |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
257 Mercurial Destination |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
258 ##################### |
5556
61fdf2558c0a
convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents:
5554
diff
changeset
|
259 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
260 The following options are supported: |
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
261 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
262 :convert.hg.clonebranches: dispatch source branches in separate |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
263 clones. The default is False. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
264 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
265 :convert.hg.tagsbranch: branch name for tag revisions, defaults to |
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
266 ``default``. |
5556
61fdf2558c0a
convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents:
5554
diff
changeset
|
267 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
268 :convert.hg.usebranchnames: preserve branch names. The default is |
13429
0079fb98e8d0
convert: fix typos in docstring
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
12924
diff
changeset
|
269 True. |
4958
71fed370b7a7
Backout ad09ce1d393c and replace ''' with """ to make some highlighting happy.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4957
diff
changeset
|
270 """ |
5621
badbefa55972
convert: move commands definition to ease demandload job (issue 860)
Patrick Mezard <pmezard@gmail.com>
parents:
5521
diff
changeset
|
271 return convcmd.convert(ui, src, dest, revmapfile, **opts) |
316 | 272 |
5621
badbefa55972
convert: move commands definition to ease demandload job (issue 860)
Patrick Mezard <pmezard@gmail.com>
parents:
5521
diff
changeset
|
273 def debugsvnlog(ui, **opts): |
7873
4a4c7f6a5912
cleanup: drop unused imports
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
7823
diff
changeset
|
274 return subversion.debugsvnlog(ui, **opts) |
316 | 275 |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
276 def debugcvsps(ui, *args, **opts): |
7598 | 277 '''create changeset information from CVS |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
278 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
279 This command is intended as a debugging tool for the CVS to |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
280 Mercurial converter, and can be used as a direct replacement for |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
281 cvsps. |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
282 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
283 Hg debugcvsps reads the CVS rlog for current directory (or any |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
284 named directory) in the CVS repository, and converts the log to a |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
285 series of changesets based on matching commit log entries and |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
286 dates.''' |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
287 return cvsps.debugcvsps(ui, *args, **opts) |
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
288 |
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
289 commands.norepo += " convert debugsvnlog debugcvsps" |
5127
39b6eaee6fd7
convert: replace fork with subprocess call.
Patrick Mezard <pmezard@gmail.com>
parents:
5121
diff
changeset
|
290 |
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
291 cmdtable = { |
4532
c3a78a49d7f0
Some small cleanups for convert extension:
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4521
diff
changeset
|
292 "convert": |
5281
a176f9c8b26e
convert: rename a class and a function
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5256
diff
changeset
|
293 (convert, |
12202
d346089095ac
convert: move -A option to --authormap
Martin Geisler <mg@lazybytes.net>
parents:
12198
diff
changeset
|
294 [('', 'authors', '', |
12198
0c67a58f0580
convert: deprecate --authors in preference for --authormap
Martin Geisler <mg@lazybytes.net>
parents:
12188
diff
changeset
|
295 _('username mapping filename (DEPRECATED, use --authormap instead)'), |
0c67a58f0580
convert: deprecate --authors in preference for --authormap
Martin Geisler <mg@lazybytes.net>
parents:
12188
diff
changeset
|
296 _('FILE')), |
12187
4a854122a1c7
convert: better grouping of command line flags in help
Martin Geisler <mg@lazybytes.net>
parents:
11685
diff
changeset
|
297 ('s', 'source-type', '', |
4a854122a1c7
convert: better grouping of command line flags in help
Martin Geisler <mg@lazybytes.net>
parents:
11685
diff
changeset
|
298 _('source repository type'), _('TYPE')), |
11321
40c06bbf58be
help: show value requirement and multiple occurrence of options
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
10282
diff
changeset
|
299 ('d', 'dest-type', '', |
40c06bbf58be
help: show value requirement and multiple occurrence of options
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
10282
diff
changeset
|
300 _('destination repository type'), _('TYPE')), |
12187
4a854122a1c7
convert: better grouping of command line flags in help
Martin Geisler <mg@lazybytes.net>
parents:
11685
diff
changeset
|
301 ('r', 'rev', '', |
4a854122a1c7
convert: better grouping of command line flags in help
Martin Geisler <mg@lazybytes.net>
parents:
11685
diff
changeset
|
302 _('import up to target revision REV'), _('REV')), |
12202
d346089095ac
convert: move -A option to --authormap
Martin Geisler <mg@lazybytes.net>
parents:
12198
diff
changeset
|
303 ('A', 'authormap', '', |
12198
0c67a58f0580
convert: deprecate --authors in preference for --authormap
Martin Geisler <mg@lazybytes.net>
parents:
12188
diff
changeset
|
304 _('remap usernames using this file'), _('FILE')), |
11321
40c06bbf58be
help: show value requirement and multiple occurrence of options
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
10282
diff
changeset
|
305 ('', 'filemap', '', |
40c06bbf58be
help: show value requirement and multiple occurrence of options
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
10282
diff
changeset
|
306 _('remap file names using contents of file'), _('FILE')), |
40c06bbf58be
help: show value requirement and multiple occurrence of options
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
10282
diff
changeset
|
307 ('', 'splicemap', '', |
40c06bbf58be
help: show value requirement and multiple occurrence of options
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
10282
diff
changeset
|
308 _('splice synthesized history into place'), _('FILE')), |
40c06bbf58be
help: show value requirement and multiple occurrence of options
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
10282
diff
changeset
|
309 ('', 'branchmap', '', |
40c06bbf58be
help: show value requirement and multiple occurrence of options
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
10282
diff
changeset
|
310 _('change branch names while converting'), _('FILE')), |
8692
827d4e807d57
convert: default revisions order depends on source
Patrick Mezard <pmezard@gmail.com>
parents:
8690
diff
changeset
|
311 ('', 'branchsort', None, _('try to sort changesets by branches')), |
8690
c5b4f662109f
convert: add --sourcesort option for source specific sort
Patrick Mezard <pmezard@gmail.com>
parents:
8668
diff
changeset
|
312 ('', 'datesort', None, _('try to sort changesets by date')), |
c5b4f662109f
convert: add --sourcesort option for source specific sort
Patrick Mezard <pmezard@gmail.com>
parents:
8668
diff
changeset
|
313 ('', 'sourcesort', None, _('preserve source changesets order'))], |
6999
f1546aa94362
i18n, convert: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6976
diff
changeset
|
314 _('hg convert [OPTION]... SOURCE [DEST [REVMAP]]')), |
5138
9cda2315c7a9
convert: Use debugsvnlog instead of git-like debug-svn-log.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5134
diff
changeset
|
315 "debugsvnlog": |
5127
39b6eaee6fd7
convert: replace fork with subprocess call.
Patrick Mezard <pmezard@gmail.com>
parents:
5121
diff
changeset
|
316 (debugsvnlog, |
39b6eaee6fd7
convert: replace fork with subprocess call.
Patrick Mezard <pmezard@gmail.com>
parents:
5121
diff
changeset
|
317 [], |
5138
9cda2315c7a9
convert: Use debugsvnlog instead of git-like debug-svn-log.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5134
diff
changeset
|
318 'hg debugsvnlog'), |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
319 "debugcvsps": |
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
320 (debugcvsps, |
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
321 [ |
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
322 # Main options shared with cvsps-2.1 |
7598 | 323 ('b', 'branches', [], _('only return changes on specified branches')), |
324 ('p', 'prefix', '', _('prefix to remove from file names')), | |
10282
08a0f04b56bd
many, many trivial check-code fixups
Matt Mackall <mpm@selenic.com>
parents:
10264
diff
changeset
|
325 ('r', 'revisions', [], |
08a0f04b56bd
many, many trivial check-code fixups
Matt Mackall <mpm@selenic.com>
parents:
10264
diff
changeset
|
326 _('only return changes after or between specified tags')), |
7598 | 327 ('u', 'update-cache', None, _("update cvs log cache")), |
328 ('x', 'new-cache', None, _("create new cvs log cache")), | |
329 ('z', 'fuzz', 60, _('set commit time fuzz in seconds')), | |
330 ('', 'root', '', _('specify cvsroot')), | |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
331 # Options specific to builtin cvsps |
7598 | 332 ('', 'parents', '', _('show parent changesets')), |
16683 | 333 ('', 'ancestors', '', |
334 _('show current changeset in ancestor branches')), | |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
335 # Options that are ignored for compatibility with cvsps-2.1 |
7735
2e48668b51f0
convert: marked string for translation
Martin Geisler <mg@daimi.au.dk>
parents:
7598
diff
changeset
|
336 ('A', 'cvs-direct', None, _('ignored for compatibility')), |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
337 ], |
7735
2e48668b51f0
convert: marked string for translation
Martin Geisler <mg@daimi.au.dk>
parents:
7598
diff
changeset
|
338 _('hg debugcvsps [OPTION]... [PATH]...')), |
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
339 } |
13691
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
340 |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
341 def kwconverted(ctx, name): |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
342 rev = ctx.extra().get('convert_revision', '') |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
343 if rev.startswith('svn:'): |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
344 if name == 'svnrev': |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
345 return str(subversion.revsplit(rev)[2]) |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
346 elif name == 'svnpath': |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
347 return subversion.revsplit(rev)[1] |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
348 elif name == 'svnuuid': |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
349 return subversion.revsplit(rev)[0] |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
350 return rev |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
351 |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
352 def kwsvnrev(repo, ctx, **args): |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
353 """:svnrev: String. Converted subversion revision number.""" |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
354 return kwconverted(ctx, 'svnrev') |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
355 |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
356 def kwsvnpath(repo, ctx, **args): |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
357 """:svnpath: String. Converted subversion revision project path.""" |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
358 return kwconverted(ctx, 'svnpath') |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
359 |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
360 def kwsvnuuid(repo, ctx, **args): |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
361 """:svnuuid: String. Converted subversion revision repository identifier.""" |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
362 return kwconverted(ctx, 'svnuuid') |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
363 |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
364 def extsetup(ui): |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
365 templatekw.keywords['svnrev'] = kwsvnrev |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
366 templatekw.keywords['svnpath'] = kwsvnpath |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
367 templatekw.keywords['svnuuid'] = kwsvnuuid |
13698
f30ce5983896
i18n: register new template keywords for translation
Patrick Mezard <pmezard@gmail.com>
parents:
13691
diff
changeset
|
368 |
f30ce5983896
i18n: register new template keywords for translation
Patrick Mezard <pmezard@gmail.com>
parents:
13691
diff
changeset
|
369 # tell hggettext to extract docstrings from these functions: |
f30ce5983896
i18n: register new template keywords for translation
Patrick Mezard <pmezard@gmail.com>
parents:
13691
diff
changeset
|
370 i18nfunctions = [kwsvnrev, kwsvnpath, kwsvnuuid] |