Mercurial > hg
annotate hgext/convert/__init__.py @ 48598:a6f16ec07ed7
stream-clone: add a explicit test for format change during stream clone
They are different kind of requirements, the one which impact the data storage
and are relevant to the files being streamed and the one which does not. For
example some requirements are only relevant to the working copy, like sparse, or
dirstate-v2.
Since they are irrelevant to the content being streamed, they do not prevent the
receiving side to use streaming clone and mercurial skip adverting them over
the wire and, ideally, within the bundle.
In addition, this let the client decide to use whichever format it desire for
the part that does not affect the store itself. So the configuration related to
these format are used as normal when doing a streaming clone.
In practice, the feature was not really tested and is badly broken with bundle-2,
since the requirements are not filtered out from the stream bundle.
So we start with adding simple tests as a good base before the fix and adjust
the feature.
Differential Revision: https://phab.mercurial-scm.org/D12029
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 17 Jan 2022 18:51:47 +0100 |
parents | d4ba4d51f85f |
children | 6000f5b25c9b |
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 # |
46819
d4ba4d51f85f
contributor: change mentions of mpm to olivia
Raphaël Gomès <rgomes@octobus.net>
parents:
46400
diff
changeset
|
3 # Copyright 2005-2007 Olivia Mackall <olivia@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 |
28414
4817c17a11a2
convert: __init__ use absolute_import
timeless <timeless@mozdev.org>
parents:
26370
diff
changeset
|
10 from __future__ import absolute_import |
4817c17a11a2
convert: __init__ use absolute_import
timeless <timeless@mozdev.org>
parents:
26370
diff
changeset
|
11 |
29205
a0939666b836
py3: move up symbol imports to enforce import-checker rules
Yuya Nishihara <yuya@tcha.org>
parents:
28540
diff
changeset
|
12 from mercurial.i18n import _ |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
13 from mercurial import registrar |
316 | 14 |
28414
4817c17a11a2
convert: __init__ use absolute_import
timeless <timeless@mozdev.org>
parents:
26370
diff
changeset
|
15 from . import ( |
4817c17a11a2
convert: __init__ use absolute_import
timeless <timeless@mozdev.org>
parents:
26370
diff
changeset
|
16 convcmd, |
4817c17a11a2
convert: __init__ use absolute_import
timeless <timeless@mozdev.org>
parents:
26370
diff
changeset
|
17 cvsps, |
4817c17a11a2
convert: __init__ use absolute_import
timeless <timeless@mozdev.org>
parents:
26370
diff
changeset
|
18 subversion, |
4817c17a11a2
convert: __init__ use absolute_import
timeless <timeless@mozdev.org>
parents:
26370
diff
changeset
|
19 ) |
4817c17a11a2
convert: __init__ use absolute_import
timeless <timeless@mozdev.org>
parents:
26370
diff
changeset
|
20 |
21244
f0dbafceeb9a
convert: declare commands using decorator
Gregory Szorc <gregory.szorc@gmail.com>
parents:
21077
diff
changeset
|
21 cmdtable = {} |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
30815
diff
changeset
|
22 command = registrar.command(cmdtable) |
29841
d5883fd055c6
extensions: change magic "shipped with hg" string
Augie Fackler <augie@google.com>
parents:
29205
diff
changeset
|
23 # Note for extension authors: ONLY specify testedwith = 'ships-with-hg-core' for |
25186
80c5b2666a96
extensions: document that `testedwith = 'internal'` is special
Augie Fackler <augie@google.com>
parents:
22512
diff
changeset
|
24 # extensions which SHIP WITH MERCURIAL. Non-mainline extensions should |
80c5b2666a96
extensions: document that `testedwith = 'internal'` is special
Augie Fackler <augie@google.com>
parents:
22512
diff
changeset
|
25 # be specifying the version(s) of Mercurial they are tested with, or |
80c5b2666a96
extensions: document that `testedwith = 'internal'` is special
Augie Fackler <augie@google.com>
parents:
22512
diff
changeset
|
26 # leave the attribute unspecified. |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
27 testedwith = b'ships-with-hg-core' |
16743
38caf405d010
hgext: mark all first-party extensions as such
Augie Fackler <raf@durin42.com>
parents:
16683
diff
changeset
|
28 |
5621
badbefa55972
convert: move commands definition to ease demandload job (issue 860)
Patrick Mezard <pmezard@gmail.com>
parents:
5521
diff
changeset
|
29 # Commands definition was moved elsewhere to ease demandload job. |
694 | 30 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
31 |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
32 @command( |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
33 b'convert', |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
34 [ |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
35 ( |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
36 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
37 b'authors', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
38 b'', |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
39 _( |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
40 b'username mapping filename (DEPRECATED) (use --authormap instead)' |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
41 ), |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
42 _(b'FILE'), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
43 ), |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
44 (b's', b'source-type', b'', _(b'source repository type'), _(b'TYPE')), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
45 ( |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
46 b'd', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
47 b'dest-type', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
48 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
49 _(b'destination repository type'), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
50 _(b'TYPE'), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
51 ), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
52 (b'r', b'rev', [], _(b'import up to source revision REV'), _(b'REV')), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
53 ( |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
54 b'A', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
55 b'authormap', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
56 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
57 _(b'remap usernames using this file'), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
58 _(b'FILE'), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
59 ), |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
60 ( |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
61 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
62 b'filemap', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
63 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
64 _(b'remap file names using contents of file'), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
65 _(b'FILE'), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
66 ), |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
67 ( |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
68 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
69 b'full', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
70 None, |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
71 _(b'apply filemap changes by converting all files again'), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
72 ), |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
73 ( |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
74 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
75 b'splicemap', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
76 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
77 _(b'splice synthesized history into place'), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
78 _(b'FILE'), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
79 ), |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
80 ( |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
81 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
82 b'branchmap', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
83 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
84 _(b'change branch names while converting'), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
85 _(b'FILE'), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
86 ), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
87 (b'', b'branchsort', None, _(b'try to sort changesets by branches')), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
88 (b'', b'datesort', None, _(b'try to sort changesets by date')), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
89 (b'', b'sourcesort', None, _(b'preserve source changesets order')), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
90 (b'', b'closesort', None, _(b'try to reorder closed revisions')), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
91 ], |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
92 _(b'hg convert [OPTION]... SOURCE [DEST [REVMAP]]'), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
93 norepo=True, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
94 ) |
5281
a176f9c8b26e
convert: rename a class and a function
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5256
diff
changeset
|
95 def convert(ui, src, dest=None, revmapfile=None, **opts): |
7598 | 96 """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
|
97 |
6976
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
98 Accepted source formats [identifiers]: |
9157
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
99 |
6976
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
100 - Mercurial [hg] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
101 - CVS [cvs] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
102 - Darcs [darcs] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
103 - git [git] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
104 - Subversion [svn] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
105 - Monotone [mtn] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
106 - GNU Arch [gnuarch] |
7053
209ef5f3534c
convert: add bzr source
Marek Kubica <marek@xivilization.net>
parents:
6999
diff
changeset
|
107 - Bazaar [bzr] |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
108 - Perforce [p4] |
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
109 |
6976
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
110 Accepted destination formats [identifiers]: |
9157
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
111 |
6976
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
112 - Mercurial [hg] |
b072266a83d1
convert: document source and sink identifiers, fix error message
Patrick Mezard <pmezard@gmail.com>
parents:
6923
diff
changeset
|
113 - 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
|
114 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
115 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
|
116 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
|
117 (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
|
118 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
119 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
|
120 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
|
121 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
|
122 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
123 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
|
124 Mercurial uses --sourcesort to preserve original revision numbers |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
125 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
|
126 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
127 --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
|
128 which means branches are usually converted one after |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
129 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
|
130 |
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
131 --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
|
132 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
|
133 magnitude larger than the same ones generated by |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
134 --branchsort. |
9157
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
135 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
136 --sourcesort try to preserve source revisions order, only |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
137 supported by Mercurial sources. |
8692
827d4e807d57
convert: default revisions order depends on source
Patrick Mezard <pmezard@gmail.com>
parents:
8690
diff
changeset
|
138 |
18819
05acdf8e1f23
convert: add closesort algorithm to mercurial sources
Constantine Linnick <theaspect@gmail.com>
parents:
18324
diff
changeset
|
139 --closesort try to move closed revisions as close as possible |
05acdf8e1f23
convert: add closesort algorithm to mercurial sources
Constantine Linnick <theaspect@gmail.com>
parents:
18324
diff
changeset
|
140 to parent branches, only supported by Mercurial |
05acdf8e1f23
convert: add closesort algorithm to mercurial sources
Constantine Linnick <theaspect@gmail.com>
parents:
18324
diff
changeset
|
141 sources. |
05acdf8e1f23
convert: add closesort algorithm to mercurial sources
Constantine Linnick <theaspect@gmail.com>
parents:
18324
diff
changeset
|
142 |
12924
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
143 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
|
144 (``<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
|
145 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
|
146 for that revision, like so:: |
9058
b10cee4bd2c1
convert: wrapped docstrings at 78 characters
Martin Geisler <mg@lazybytes.net>
parents:
8932
diff
changeset
|
147 |
9157
9261667e9b82
commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents:
9103
diff
changeset
|
148 <source ID> <destination ID> |
4513
ac2fe196ac9b
Turns convert.py into a real extension
Edouard Gomez <ed.gomez@free.fr>
parents:
4512
diff
changeset
|
149 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
150 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
|
151 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
|
152 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
|
153 |
12198
0c67a58f0580
convert: deprecate --authors in preference for --authormap
Martin Geisler <mg@lazybytes.net>
parents:
12188
diff
changeset
|
154 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
|
155 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
|
156 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
|
157 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
|
158 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
159 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
|
160 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
161 Empty lines and lines starting with a ``#`` are ignored. |
5256
0b0caffcf175
convert: document filemap.
Bryan O'Sullivan <bos@serpentine.com>
parents:
5204
diff
changeset
|
162 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
163 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
|
164 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
|
165 directives:: |
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
166 |
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
167 include path/to/file-or-dir |
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
168 |
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
169 exclude path/to/file-or-dir |
5256
0b0caffcf175
convert: document filemap.
Bryan O'Sullivan <bos@serpentine.com>
parents:
5204
diff
changeset
|
170 |
11523
dec57aa0f8ca
convert: cleanup of filemap help text
Mads Kiilerich <mads@kiilerich.com>
parents:
11321
diff
changeset
|
171 rename path/to/source path/to/destination |
5256
0b0caffcf175
convert: document filemap.
Bryan O'Sullivan <bos@serpentine.com>
parents:
5204
diff
changeset
|
172 |
12188 | 173 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
|
174 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
|
175 directories. The ``include`` or ``exclude`` directive with the |
6a94459b7afa
convert: better quoting in help text
Martin Geisler <mg@lazybytes.net>
parents:
12184
diff
changeset
|
176 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
|
177 |
12185
6a94459b7afa
convert: better quoting in help text
Martin Geisler <mg@lazybytes.net>
parents:
12184
diff
changeset
|
178 The ``include`` directive causes a file, or all files under a |
20784
7f4cf938643d
convert: more clear documentation of the 'include' default of a 'include .'
Mads Kiilerich <madski@unity3d.com>
parents:
19891
diff
changeset
|
179 directory, to be included in the destination repository. The default |
7f4cf938643d
convert: more clear documentation of the 'include' default of a 'include .'
Mads Kiilerich <madski@unity3d.com>
parents:
19891
diff
changeset
|
180 if there are no ``include`` statements is to include everything. |
7f4cf938643d
convert: more clear documentation of the 'include' default of a 'include .'
Mads Kiilerich <madski@unity3d.com>
parents:
19891
diff
changeset
|
181 If there are any ``include`` statements, nothing else is included. |
7f4cf938643d
convert: more clear documentation of the 'include' default of a 'include .'
Mads Kiilerich <madski@unity3d.com>
parents:
19891
diff
changeset
|
182 The ``exclude`` directive causes files or directories to |
12185
6a94459b7afa
convert: better quoting in help text
Martin Geisler <mg@lazybytes.net>
parents:
12184
diff
changeset
|
183 be omitted. The ``rename`` directive renames a file or directory if |
11685 | 184 it is converted. To rename from a subdirectory into the root of |
12188 | 185 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
|
186 |
22300
35ab037de989
convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents:
21769
diff
changeset
|
187 ``--full`` will make sure the converted changesets contain exactly |
35ab037de989
convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents:
21769
diff
changeset
|
188 the right files with the right content. It will make a full |
35ab037de989
convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents:
21769
diff
changeset
|
189 conversion of all files, not just the ones that have |
35ab037de989
convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents:
21769
diff
changeset
|
190 changed. Files that already are correct will not be changed. This |
35ab037de989
convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents:
21769
diff
changeset
|
191 can be used to apply filemap changes when converting |
35ab037de989
convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents:
21769
diff
changeset
|
192 incrementally. This is currently only supported for Mercurial and |
35ab037de989
convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents:
21769
diff
changeset
|
193 Subversion. |
35ab037de989
convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents:
21769
diff
changeset
|
194 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
195 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
|
196 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
|
197 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
|
198 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
|
199 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
|
200 comma-separated values:: |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
201 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
202 key parent1, parent2 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
203 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
204 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
|
205 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
|
206 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
|
207 (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
|
208 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
|
209 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
|
210 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
|
211 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
|
212 |
8377
29f4f0d66cd5
convert: adding branchmap functionality to convert extension
Michael J. Pedersen <m.pedersen@icelus.org>
parents:
8228
diff
changeset
|
213 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
|
214 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
|
215 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
|
216 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
|
217 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
|
218 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
|
219 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
220 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
|
221 |
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
222 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
|
223 source repository, and "new_branch_name" is the name of the branch |
32755
3a57bfd369d4
convert: correct the documentation about whitespace in branchmap branches
Matt Harbison <matt_harbison@yahoo.com>
parents:
32337
diff
changeset
|
224 is the destination repository. No whitespace is allowed in the new |
3a57bfd369d4
convert: correct the documentation about whitespace in branchmap branches
Matt Harbison <matt_harbison@yahoo.com>
parents:
32337
diff
changeset
|
225 branch name. This can be used to (for instance) move code in one |
12184
025ca07351ea
convert: show example splice, author, and branch map entries in help
Martin Geisler <mg@lazybytes.net>
parents:
11523
diff
changeset
|
226 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
|
227 |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
228 Mercurial Source |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
229 ################ |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
230 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
231 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
|
232 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
|
233 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
234 :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
|
235 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
|
236 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
|
237 |
13429
0079fb98e8d0
convert: fix typos in docstring
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
12924
diff
changeset
|
238 :convert.hg.saverev: store original revision ID in changeset |
15300 | 239 (forces target IDs to change). It takes a boolean argument and |
240 defaults to False. | |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
241 |
25880
6fb55c6c6562
convert: document convert.hg.startrev
Matt Harbison <matt_harbison@yahoo.com>
parents:
25787
diff
changeset
|
242 :convert.hg.startrev: specify the initial Mercurial revision. |
6fb55c6c6562
convert: document convert.hg.startrev
Matt Harbison <matt_harbison@yahoo.com>
parents:
25787
diff
changeset
|
243 The default is 0. |
6fb55c6c6562
convert: document convert.hg.startrev
Matt Harbison <matt_harbison@yahoo.com>
parents:
25787
diff
changeset
|
244 |
19891
e271970b9821
convert: introduce hg.revs to replace hg.startrev and --rev with a revset
Mads Kiilerich <madski@unity3d.com>
parents:
19864
diff
changeset
|
245 :convert.hg.revs: revset specifying the source revisions to convert. |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
246 |
38572
85da230c316a
convert: add a config knob for not saving the bzr revision
Matt Harbison <matt_harbison@yahoo.com>
parents:
37658
diff
changeset
|
247 Bazaar Source |
85da230c316a
convert: add a config knob for not saving the bzr revision
Matt Harbison <matt_harbison@yahoo.com>
parents:
37658
diff
changeset
|
248 ############# |
85da230c316a
convert: add a config knob for not saving the bzr revision
Matt Harbison <matt_harbison@yahoo.com>
parents:
37658
diff
changeset
|
249 |
85da230c316a
convert: add a config knob for not saving the bzr revision
Matt Harbison <matt_harbison@yahoo.com>
parents:
37658
diff
changeset
|
250 The following options can be used with ``--config``: |
85da230c316a
convert: add a config knob for not saving the bzr revision
Matt Harbison <matt_harbison@yahoo.com>
parents:
37658
diff
changeset
|
251 |
85da230c316a
convert: add a config knob for not saving the bzr revision
Matt Harbison <matt_harbison@yahoo.com>
parents:
37658
diff
changeset
|
252 :convert.bzr.saverev: whether to store the original Bazaar commit ID in |
85da230c316a
convert: add a config knob for not saving the bzr revision
Matt Harbison <matt_harbison@yahoo.com>
parents:
37658
diff
changeset
|
253 the metadata of the destination commit. The default is True. |
85da230c316a
convert: add a config knob for not saving the bzr revision
Matt Harbison <matt_harbison@yahoo.com>
parents:
37658
diff
changeset
|
254 |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6666
diff
changeset
|
255 CVS Source |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
256 ########## |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6666
diff
changeset
|
257 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
258 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
|
259 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
|
260 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
|
261 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
|
262 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
|
263 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
|
264 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
|
265 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
|
266 sandbox is ignored. |
6798
ceb28b67204e
convert: add documentation for CVS source
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
6666
diff
changeset
|
267 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
268 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
|
269 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
270 :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
|
271 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
|
272 |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
273 :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
|
274 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
|
275 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
|
276 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
|
277 The default is 60. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
278 |
33388
0823f0983eaa
convert: transcode CVS log messages by specified encoding (issue5597)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32755
diff
changeset
|
279 :convert.cvsps.logencoding: Specify encoding name to be used for |
0823f0983eaa
convert: transcode CVS log messages by specified encoding (issue5597)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32755
diff
changeset
|
280 transcoding CVS log messages. Multiple encoding names can be |
0823f0983eaa
convert: transcode CVS log messages by specified encoding (issue5597)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32755
diff
changeset
|
281 specified as a list (see :hg:`help config.Syntax`), but only |
0823f0983eaa
convert: transcode CVS log messages by specified encoding (issue5597)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32755
diff
changeset
|
282 the first acceptable encoding in the list is used per CVS log |
0823f0983eaa
convert: transcode CVS log messages by specified encoding (issue5597)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32755
diff
changeset
|
283 entries. This transcoding is executed before cvslog hook below. |
0823f0983eaa
convert: transcode CVS log messages by specified encoding (issue5597)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32755
diff
changeset
|
284 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
285 :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
|
286 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
|
287 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
|
288 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
|
289 indicated in the regex. Default is ``{{mergetobranch |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
290 ([-\\w]+)}}`` |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
291 |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
292 :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
|
293 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
|
294 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
|
295 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
|
296 changeset. Default is ``{{mergefrombranch ([-\\w]+)}}`` |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
297 |
17974
337d728e644f
convert: add config option to use the local time zone
Julian Cowley <julian@lava.net>
parents:
17424
diff
changeset
|
298 :convert.localtimezone: use local time (as determined by the TZ |
337d728e644f
convert: add config option to use the local time zone
Julian Cowley <julian@lava.net>
parents:
17424
diff
changeset
|
299 environment variable) for changeset date/times. The default |
337d728e644f
convert: add config option to use the local time zone
Julian Cowley <julian@lava.net>
parents:
17424
diff
changeset
|
300 is False (use UTC). |
337d728e644f
convert: add config option to use the local time zone
Julian Cowley <julian@lava.net>
parents:
17424
diff
changeset
|
301 |
18321
c51d2bc7a5d7
convert: correct 'hooks' section name in online help
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17424
diff
changeset
|
302 :hooks.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
|
303 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
|
304 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
|
305 delete them. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
306 |
18321
c51d2bc7a5d7
convert: correct 'hooks' section name in online help
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17424
diff
changeset
|
307 :hooks.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
|
308 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
|
309 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
|
310 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
|
311 |
9472
a15813fae0a8
convert/cvs: update debugcvsps documentation
Patrick Mezard <pmezard@gmail.com>
parents:
9256
diff
changeset
|
312 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
|
313 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
|
314 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
|
315 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
|
316 |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
317 Subversion Source |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
318 ################# |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
319 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
320 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
|
321 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
|
322 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
|
323 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
|
324 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
|
325 ``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
|
326 converted branches. Default ``trunk``, ``branches`` and ``tags`` |
2f1174b2c4fa
convert: better ReST markup in docstring
Martin Geisler <mg@aragost.com>
parents:
12923
diff
changeset
|
327 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
|
328 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
|
329 detection. |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
330 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
331 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
|
332 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
333 :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
|
334 The default is ``branches``. |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
335 |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
336 :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
|
337 default is ``tags``. |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
338 |
13494
3178aca36b0f
convert.svn: branch name which equals trunk means `default' branch (issue2653)
Pavel Boldin <boldin.pavel@gmail.com>
parents:
13429
diff
changeset
|
339 :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
|
340 default is ``trunk``. |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
341 |
17974
337d728e644f
convert: add config option to use the local time zone
Julian Cowley <julian@lava.net>
parents:
17424
diff
changeset
|
342 :convert.localtimezone: use local time (as determined by the TZ |
337d728e644f
convert: add config option to use the local time zone
Julian Cowley <julian@lava.net>
parents:
17424
diff
changeset
|
343 environment variable) for changeset date/times. The default |
337d728e644f
convert: add config option to use the local time zone
Julian Cowley <julian@lava.net>
parents:
17424
diff
changeset
|
344 is False (use UTC). |
337d728e644f
convert: add config option to use the local time zone
Julian Cowley <julian@lava.net>
parents:
17424
diff
changeset
|
345 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
346 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
|
347 instead of being integrally converted. Only single branch |
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
348 conversions are supported. |
6173
963000ed8cac
convert: add shallow, single branch svn conversions via svn.startrev
Patrick Mezard <pmezard@gmail.com>
parents:
6172
diff
changeset
|
349 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
350 :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
|
351 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
|
352 |
22466
e1b68c0a9363
convert: add initial docs for git sources
Siddharth Agarwal <sid0@fb.com>
parents:
22300
diff
changeset
|
353 Git Source |
e1b68c0a9363
convert: add initial docs for git sources
Siddharth Agarwal <sid0@fb.com>
parents:
22300
diff
changeset
|
354 ########## |
e1b68c0a9363
convert: add initial docs for git sources
Siddharth Agarwal <sid0@fb.com>
parents:
22300
diff
changeset
|
355 |
e1b68c0a9363
convert: add initial docs for git sources
Siddharth Agarwal <sid0@fb.com>
parents:
22300
diff
changeset
|
356 The Git importer converts commits from all reachable branches (refs |
e1b68c0a9363
convert: add initial docs for git sources
Siddharth Agarwal <sid0@fb.com>
parents:
22300
diff
changeset
|
357 in refs/heads) and remotes (refs in refs/remotes) to Mercurial. |
e1b68c0a9363
convert: add initial docs for git sources
Siddharth Agarwal <sid0@fb.com>
parents:
22300
diff
changeset
|
358 Branches are converted to bookmarks with the same name, with the |
e1b68c0a9363
convert: add initial docs for git sources
Siddharth Agarwal <sid0@fb.com>
parents:
22300
diff
changeset
|
359 leading 'refs/heads' stripped. Git submodules are converted to Git |
e1b68c0a9363
convert: add initial docs for git sources
Siddharth Agarwal <sid0@fb.com>
parents:
22300
diff
changeset
|
360 subrepos in Mercurial. |
e1b68c0a9363
convert: add initial docs for git sources
Siddharth Agarwal <sid0@fb.com>
parents:
22300
diff
changeset
|
361 |
22470
8e0c4df28eec
convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents:
22466
diff
changeset
|
362 The following options can be set with ``--config``: |
8e0c4df28eec
convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents:
22466
diff
changeset
|
363 |
8e0c4df28eec
convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents:
22466
diff
changeset
|
364 :convert.git.similarity: specify how similar files modified in a |
8e0c4df28eec
convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents:
22466
diff
changeset
|
365 commit must be to be imported as renames or copies, as a |
8e0c4df28eec
convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents:
22466
diff
changeset
|
366 percentage between ``0`` (disabled) and ``100`` (files must be |
8e0c4df28eec
convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents:
22466
diff
changeset
|
367 identical). For example, ``90`` means that a delete/add pair will |
8e0c4df28eec
convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents:
22466
diff
changeset
|
368 be imported as a rename if more than 90% of the file hasn't |
22512
6b6da715cb96
convert: change default for git rename detection to 50%
Siddharth Agarwal <sid0@fb.com>
parents:
22471
diff
changeset
|
369 changed. The default is ``50``. |
22470
8e0c4df28eec
convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents:
22466
diff
changeset
|
370 |
22471
cc5f94db672b
convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents:
22470
diff
changeset
|
371 :convert.git.findcopiesharder: while detecting copies, look at all |
cc5f94db672b
convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents:
22470
diff
changeset
|
372 files in the working copy instead of just changed ones. This |
cc5f94db672b
convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents:
22470
diff
changeset
|
373 is very expensive for large projects, and is only effective when |
cc5f94db672b
convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents:
22470
diff
changeset
|
374 ``convert.git.similarity`` is greater than 0. The default is False. |
cc5f94db672b
convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents:
22470
diff
changeset
|
375 |
30646
ea3540e66fd8
convert: config option for git rename limit
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29841
diff
changeset
|
376 :convert.git.renamelimit: perform rename and copy detection up to this |
ea3540e66fd8
convert: config option for git rename limit
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29841
diff
changeset
|
377 many changed files in a commit. Increasing this will make rename |
ea3540e66fd8
convert: config option for git rename limit
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29841
diff
changeset
|
378 and copy detection more accurate but will significantly slow down |
ea3540e66fd8
convert: config option for git rename limit
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29841
diff
changeset
|
379 computation on large projects. The option is only relevant if |
ea3540e66fd8
convert: config option for git rename limit
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29841
diff
changeset
|
380 ``convert.git.similarity`` is greater than 0. The default is |
ea3540e66fd8
convert: config option for git rename limit
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29841
diff
changeset
|
381 ``400``. |
ea3540e66fd8
convert: config option for git rename limit
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29841
diff
changeset
|
382 |
30813
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
383 :convert.git.committeractions: list of actions to take when processing |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
384 author and committer values. |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
385 |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
386 Git commits have separate author (who wrote the commit) and committer |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
387 (who applied the commit) fields. Not all destinations support separate |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
388 author and committer fields (including Mercurial). This config option |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
389 controls what to do with these author and committer fields during |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
390 conversion. |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
391 |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
392 A value of ``messagedifferent`` will append a ``committer: ...`` |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
393 line to the commit message if the Git committer is different from the |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
394 author. The prefix of that line can be specified using the syntax |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
395 ``messagedifferent=<prefix>``. e.g. ``messagedifferent=git-committer:``. |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
396 When a prefix is specified, a space will always be inserted between the |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
397 prefix and the value. |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
398 |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
399 ``messagealways`` behaves like ``messagedifferent`` except it will |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
400 always result in a ``committer: ...`` line being appended to the commit |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
401 message. This value is mutually exclusive with ``messagedifferent``. |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
402 |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
403 ``dropcommitter`` will remove references to the committer. Only |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
404 references to the author will remain. Actions that add references |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
405 to the committer will have no effect when this is set. |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
406 |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
407 ``replaceauthor`` will replace the value of the author field with |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
408 the committer. Other actions that add references to the committer |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
409 will still take effect when this is set. |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
410 |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
411 The default is ``messagedifferent``. |
2cbbd4622ab0
convert: config option to control Git committer actions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30661
diff
changeset
|
412 |
30660
1f21a6835604
convert: add config option to copy extra keys from Git commits
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30646
diff
changeset
|
413 :convert.git.extrakeys: list of extra keys from commit metadata to copy to |
1f21a6835604
convert: add config option to copy extra keys from Git commits
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30646
diff
changeset
|
414 the destination. Some Git repositories store extra metadata in commits. |
1f21a6835604
convert: add config option to copy extra keys from Git commits
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30646
diff
changeset
|
415 By default, this non-default metadata will be lost during conversion. |
1f21a6835604
convert: add config option to copy extra keys from Git commits
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30646
diff
changeset
|
416 Setting this config option can retain that metadata. Some built-in |
1f21a6835604
convert: add config option to copy extra keys from Git commits
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30646
diff
changeset
|
417 keys such as ``parent`` and ``branch`` are not allowed to be copied. |
1f21a6835604
convert: add config option to copy extra keys from Git commits
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30646
diff
changeset
|
418 |
25787
d9133e89d39d
convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents:
25750
diff
changeset
|
419 :convert.git.remoteprefix: remote refs are converted as bookmarks with |
d9133e89d39d
convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents:
25750
diff
changeset
|
420 ``convert.git.remoteprefix`` as a prefix followed by a /. The default |
d9133e89d39d
convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents:
25750
diff
changeset
|
421 is 'remote'. |
d9133e89d39d
convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents:
25750
diff
changeset
|
422 |
30661
ced0d686ecb3
convert: add config option to control storing original revision
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30660
diff
changeset
|
423 :convert.git.saverev: whether to store the original Git commit ID in the |
ced0d686ecb3
convert: add config option to control storing original revision
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30660
diff
changeset
|
424 metadata of the destination commit. The default is True. |
ced0d686ecb3
convert: add config option to control storing original revision
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30660
diff
changeset
|
425 |
26077
e63d05fbae84
convert: add convert.git.skipsubmodules option
Durham Goode <durham@fb.com>
parents:
25884
diff
changeset
|
426 :convert.git.skipsubmodules: does not convert root level .gitmodules files |
e63d05fbae84
convert: add convert.git.skipsubmodules option
Durham Goode <durham@fb.com>
parents:
25884
diff
changeset
|
427 or files with 160000 mode indicating a submodule. Default is False. |
e63d05fbae84
convert: add convert.git.skipsubmodules option
Durham Goode <durham@fb.com>
parents:
25884
diff
changeset
|
428 |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
429 Perforce Source |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
430 ############### |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
431 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
432 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
|
433 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
|
434 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
|
435 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
|
436 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
|
437 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
|
438 |
25884
b810b59eca62
convert: when converting from Perforce use original local encoding by default
Eugene Baranov <eug.baranov@gmail.com>
parents:
25880
diff
changeset
|
439 The following options can be set with ``--config``: |
b810b59eca62
convert: when converting from Perforce use original local encoding by default
Eugene Baranov <eug.baranov@gmail.com>
parents:
25880
diff
changeset
|
440 |
b810b59eca62
convert: when converting from Perforce use original local encoding by default
Eugene Baranov <eug.baranov@gmail.com>
parents:
25880
diff
changeset
|
441 :convert.p4.encoding: specify the encoding to use when decoding standard |
b810b59eca62
convert: when converting from Perforce use original local encoding by default
Eugene Baranov <eug.baranov@gmail.com>
parents:
25880
diff
changeset
|
442 output of the Perforce command line tool. The default is default system |
b810b59eca62
convert: when converting from Perforce use original local encoding by default
Eugene Baranov <eug.baranov@gmail.com>
parents:
25880
diff
changeset
|
443 encoding. |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
444 |
13429
0079fb98e8d0
convert: fix typos in docstring
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
12924
diff
changeset
|
445 :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
|
446 Perforce changelist number). |
7823
11efa41037e2
convert: Perforce source for conversion to Mercurial
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7815
diff
changeset
|
447 |
6169
55455556f921
convert: improve subversion source documentation
Patrick Mezard <pmezard@gmail.com>
parents:
6143
diff
changeset
|
448 Mercurial Destination |
17267
979b107eaea2
doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
17251
diff
changeset
|
449 ##################### |
5556
61fdf2558c0a
convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents:
5554
diff
changeset
|
450 |
25558
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
451 The Mercurial destination will recognize Mercurial subrepositories in the |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
452 destination directory, and update the .hgsubstate file automatically if the |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
453 destination subrepositories contain the <dest>/<sub>/.hg/shamap file. |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
454 Converting a repository with subrepositories requires converting a single |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
455 repository at a time, from the bottom up. |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
456 |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
457 .. container:: verbose |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
458 |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
459 An example showing how to convert a repository with subrepositories:: |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
460 |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
461 # so convert knows the type when it sees a non empty destination |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
462 $ hg init converted |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
463 |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
464 $ hg convert orig/sub1 converted/sub1 |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
465 $ hg convert orig/sub2 converted/sub2 |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
466 $ hg convert orig converted |
daf9f7ee2a5c
convert: support incremental conversion with hg subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents:
25186
diff
changeset
|
467 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
468 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
|
469 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
470 :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
|
471 clones. The default is False. |
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
472 |
12922
58f0c60b7f40
convert: use field list instead of option list in help
Erik Zielke <ez@aragost.com>
parents:
12778
diff
changeset
|
473 :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
|
474 ``default``. |
5556
61fdf2558c0a
convert: some tidyups, doc improvements, and test fixes
Bryan O'Sullivan <bos@serpentine.com>
parents:
5554
diff
changeset
|
475 |
12923
7d384a372ce8
convert: split docstring lists for easier translation
Martin Geisler <mg@aragost.com>
parents:
12922
diff
changeset
|
476 :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
|
477 True. |
25741
86fe3c404c1e
convert: add config to not convert tags
Durham Goode <durham@fb.com>
parents:
25558
diff
changeset
|
478 |
25750
c9093d4d1ff6
convert: add config for recording the source name
Durham Goode <durham@fb.com>
parents:
25748
diff
changeset
|
479 :convert.hg.sourcename: records the given string as a 'convert_source' extra |
c9093d4d1ff6
convert: add config for recording the source name
Durham Goode <durham@fb.com>
parents:
25748
diff
changeset
|
480 value on each commit made in the target repository. The default is None. |
c9093d4d1ff6
convert: add config for recording the source name
Durham Goode <durham@fb.com>
parents:
25748
diff
changeset
|
481 |
42620
d98ec36be808
convert: add a config option to help doing identity hg->hg conversion
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
38572
diff
changeset
|
482 :convert.hg.preserve-hash: only works with mercurial sources. Make convert |
d98ec36be808
convert: add a config option to help doing identity hg->hg conversion
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
38572
diff
changeset
|
483 prevent performance improvement to the list of modified files in commits |
d98ec36be808
convert: add a config option to help doing identity hg->hg conversion
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
38572
diff
changeset
|
484 when such an improvement would cause the hash of a commit to change. |
d98ec36be808
convert: add a config option to help doing identity hg->hg conversion
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
38572
diff
changeset
|
485 The default is False. |
d98ec36be808
convert: add a config option to help doing identity hg->hg conversion
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
38572
diff
changeset
|
486 |
25741
86fe3c404c1e
convert: add config to not convert tags
Durham Goode <durham@fb.com>
parents:
25558
diff
changeset
|
487 All Destinations |
86fe3c404c1e
convert: add config to not convert tags
Durham Goode <durham@fb.com>
parents:
25558
diff
changeset
|
488 ################ |
86fe3c404c1e
convert: add config to not convert tags
Durham Goode <durham@fb.com>
parents:
25558
diff
changeset
|
489 |
86fe3c404c1e
convert: add config to not convert tags
Durham Goode <durham@fb.com>
parents:
25558
diff
changeset
|
490 All destination types accept the following options: |
86fe3c404c1e
convert: add config to not convert tags
Durham Goode <durham@fb.com>
parents:
25558
diff
changeset
|
491 |
86fe3c404c1e
convert: add config to not convert tags
Durham Goode <durham@fb.com>
parents:
25558
diff
changeset
|
492 :convert.skiptags: does not convert tags from the source repo to the target |
86fe3c404c1e
convert: add config to not convert tags
Durham Goode <durham@fb.com>
parents:
25558
diff
changeset
|
493 repo. The default is False. |
46400
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
494 |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
495 Subversion Destination |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
496 ###################### |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
497 |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
498 Original commit dates are not preserved by default. |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
499 |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
500 :convert.svn.dangerous-set-commit-dates: preserve original commit dates, |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
501 forcefully setting ``svn:date`` revision properties. This option is |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
502 DANGEROUS and may break some subversion functionality for the resulting |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
503 repository (e.g. filtering revisions with date ranges in ``svn log``), |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
504 as original commit dates are not guaranteed to be monotonically |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
505 increasing. |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
506 |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
507 For commit dates setting to work destination repository must have |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
508 ``pre-revprop-change`` hook configured to allow setting of ``svn:date`` |
7525e77b5eac
convert: option to set date and time for svn commits
Nikita Slyusarev <nslus@yandex-team.com>
parents:
45942
diff
changeset
|
509 revision properties. See Subversion documentation for more details. |
4958
71fed370b7a7
Backout ad09ce1d393c and replace ''' with """ to make some highlighting happy.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4957
diff
changeset
|
510 """ |
5621
badbefa55972
convert: move commands definition to ease demandload job (issue 860)
Patrick Mezard <pmezard@gmail.com>
parents:
5521
diff
changeset
|
511 return convcmd.convert(ui, src, dest, revmapfile, **opts) |
316 | 512 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
513 |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
514 @command(b'debugsvnlog', [], b'hg debugsvnlog', norepo=True) |
5621
badbefa55972
convert: move commands definition to ease demandload job (issue 860)
Patrick Mezard <pmezard@gmail.com>
parents:
5521
diff
changeset
|
515 def debugsvnlog(ui, **opts): |
7873
4a4c7f6a5912
cleanup: drop unused imports
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
7823
diff
changeset
|
516 return subversion.debugsvnlog(ui, **opts) |
316 | 517 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
518 |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
519 @command( |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
520 b'debugcvsps', |
21244
f0dbafceeb9a
convert: declare commands using decorator
Gregory Szorc <gregory.szorc@gmail.com>
parents:
21077
diff
changeset
|
521 [ |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
522 # Main options shared with cvsps-2.1 |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
523 ( |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
524 b'b', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
525 b'branches', |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
526 [], |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
527 _(b'only return changes on specified branches'), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
528 ), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
529 (b'p', b'prefix', b'', _(b'prefix to remove from file names')), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
530 ( |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
531 b'r', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
532 b'revisions', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
533 [], |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
534 _(b'only return changes after or between specified tags'), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
535 ), |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
536 (b'u', b'update-cache', None, _(b"update cvs log cache")), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
537 (b'x', b'new-cache', None, _(b"create new cvs log cache")), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
538 (b'z', b'fuzz', 60, _(b'set commit time fuzz in seconds')), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
539 (b'', b'root', b'', _(b'specify cvsroot')), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
540 # Options specific to builtin cvsps |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
541 (b'', b'parents', b'', _(b'show parent changesets')), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
542 ( |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
543 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
544 b'ancestors', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
545 b'', |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
546 _(b'show current changeset in ancestor branches'), |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
547 ), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
548 # Options that are ignored for compatibility with cvsps-2.1 |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
549 (b'A', b'cvs-direct', None, _(b'ignored for compatibility')), |
21244
f0dbafceeb9a
convert: declare commands using decorator
Gregory Szorc <gregory.szorc@gmail.com>
parents:
21077
diff
changeset
|
550 ], |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
551 _(b'hg debugcvsps [OPTION]... [PATH]...'), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
552 norepo=True, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
553 ) |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
554 def debugcvsps(ui, *args, **opts): |
45942
89a2afe31e82
formating: upgrade to black 20.8b1
Augie Fackler <raf@durin42.com>
parents:
43077
diff
changeset
|
555 """create changeset information from CVS |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
556 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
557 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
|
558 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
|
559 cvsps. |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
560 |
9256
dd89dd090b47
convert: wrap docstrings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents:
9157
diff
changeset
|
561 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
|
562 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
|
563 series of changesets based on matching commit log entries and |
45942
89a2afe31e82
formating: upgrade to black 20.8b1
Augie Fackler <raf@durin42.com>
parents:
43077
diff
changeset
|
564 dates.""" |
7502
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
565 return cvsps.debugcvsps(ui, *args, **opts) |
16905fc2690f
Add debugcvsps command, replacing cvsps script
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents:
7236
diff
changeset
|
566 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
567 |
36514
7b74afec6772
templatekw: switch non-showlist template keywords to new API
Yuya Nishihara <yuya@tcha.org>
parents:
35036
diff
changeset
|
568 def kwconverted(context, mapping, name): |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
569 ctx = context.resource(mapping, b'ctx') |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
570 rev = ctx.extra().get(b'convert_revision', b'') |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
571 if rev.startswith(b'svn:'): |
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
572 if name == b'svnrev': |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
573 return b"%d" % subversion.revsplit(rev)[2] |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
574 elif name == b'svnpath': |
13691
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
575 return subversion.revsplit(rev)[1] |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
576 elif name == b'svnuuid': |
13691
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
577 return subversion.revsplit(rev)[0] |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
578 return rev |
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
579 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
580 |
28540
012411b9940d
hgext: use templatekeyword to mark a function as template keyword
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
28414
diff
changeset
|
581 templatekeyword = registrar.templatekeyword() |
012411b9940d
hgext: use templatekeyword to mark a function as template keyword
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
28414
diff
changeset
|
582 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
583 |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
584 @templatekeyword(b'svnrev', requires={b'ctx'}) |
36514
7b74afec6772
templatekw: switch non-showlist template keywords to new API
Yuya Nishihara <yuya@tcha.org>
parents:
35036
diff
changeset
|
585 def kwsvnrev(context, mapping): |
28540
012411b9940d
hgext: use templatekeyword to mark a function as template keyword
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
28414
diff
changeset
|
586 """String. Converted subversion revision number.""" |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
587 return kwconverted(context, mapping, b'svnrev') |
13691
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
588 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
589 |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
590 @templatekeyword(b'svnpath', requires={b'ctx'}) |
36514
7b74afec6772
templatekw: switch non-showlist template keywords to new API
Yuya Nishihara <yuya@tcha.org>
parents:
35036
diff
changeset
|
591 def kwsvnpath(context, mapping): |
28540
012411b9940d
hgext: use templatekeyword to mark a function as template keyword
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
28414
diff
changeset
|
592 """String. Converted subversion revision project path.""" |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
593 return kwconverted(context, mapping, b'svnpath') |
13691
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
594 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
595 |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
596 @templatekeyword(b'svnuuid', requires={b'ctx'}) |
36514
7b74afec6772
templatekw: switch non-showlist template keywords to new API
Yuya Nishihara <yuya@tcha.org>
parents:
35036
diff
changeset
|
597 def kwsvnuuid(context, mapping): |
28540
012411b9940d
hgext: use templatekeyword to mark a function as template keyword
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
28414
diff
changeset
|
598 """String. Converted subversion revision repository identifier.""" |
43077
687b865b95ad
formatting: byteify all mercurial/ and hgext/ string literals
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
599 return kwconverted(context, mapping, b'svnuuid') |
13691
ad02eba55459
convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com>
parents:
13494
diff
changeset
|
600 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
42620
diff
changeset
|
601 |
13698
f30ce5983896
i18n: register new template keywords for translation
Patrick Mezard <pmezard@gmail.com>
parents:
13691
diff
changeset
|
602 # 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
|
603 i18nfunctions = [kwsvnrev, kwsvnpath, kwsvnuuid] |