annotate hgsubversion/help/subversion.rst @ 1602:6a6ce9d9da35 default tip

compathacks: make memfilectx construction compatible with hg5.0 'copied' in memfilectx was renamed to 'copysource' in 550a172a603b9ed in core mercurial.
author Pulkit Goyal <pulkit@yandex-team.ru>
date Fri, 19 Apr 2019 16:28:39 +0300
parents ddfd60760fac
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
1 Basic Use
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
2 ---------
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
3
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
4 Converting a Subversion repository to Mercurial with hgsubversion is done by
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
5 cloning it. Subversion repositories are specified using the same, regular URL
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
6 syntax that Subversion uses. hgsubversion accepts URIs such as the following::
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
7
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
8 http://user:sekrit@example.com/repo
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
9 https://user@example.com/repo
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
10 svn://example.com/repo
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
11 svn+ssh://example.com/repo
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
12 file:///tmp/repo
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
13
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
14 In the case of the two first schemas, HTTP and HTTPS, the repository is first
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
15 treated as a Mercurial repository, and a Subversion pull attempted should it
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
16 fail. As this can be particularly annoying for repositories that require
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
17 authentication, such repositories may also specified using a svn+http or
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
18 svn+https schema.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
19
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
20 To create a new Mercurial clone, you can use a command such as the following::
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
21
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
22 $ hg clone <repository URI> [destination]
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
23
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
24 Or with a real example::
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
25
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
26 $ hg clone http://python-nose.googlecode.com/svn nose-hg
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
27
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
28 Please note that there are two slightly different ways of cloning repositories:
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
29
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
30 The most common desire is to have the full history of a repository, including
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
31 all its tags and branches. In such cases you should clone from one level above
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
32 trunk, as in the example above. This is known as `standard layout`, and works
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
33 with repositories that use the conventional ``trunk``, ``tags`` and ``branches``
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
34 directories. By default, hgsubversion will use this layout whenever it finds any
1093
791382a21cc4 layouts: add support for configuring branches directory
David Schleimer <dschleimer@fb.com>
parents: 1092
diff changeset
35 of these directories at the specified directory on the server. Standard layout
791382a21cc4 layouts: add support for configuring branches directory
David Schleimer <dschleimer@fb.com>
parents: 1092
diff changeset
36 also supports alternate names for the ``branches`` directory and multiple tags
1094
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
37 locations. Finally, Standard Layout supports selecting a subdirectory relative
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
38 to ``trunk``, and each branch and tag dir. This is useful if you have a single
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
39 ``trunk``, ``branches``, and ``tags`` with several projects inside, and you wish
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
40 to import only a single project.
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
41
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
42 If you instead want to clone just a single directory or branch, clone the
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
43 specific directory path. In the example above, to get *only* trunk, you would
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
44 issue ``hg clone http://python-nose.googlecode.com/svn/trunk nose-trunk``. This
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
45 works with any directory with a Subversion repository, and is known as a single
701
3b8088de027d clone: replace the --singlebranch with overloading for --branch
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 686
diff changeset
46 directory clone. Normally, converted changesets will be marked as belonging to
3b8088de027d clone: replace the --singlebranch with overloading for --branch
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 686
diff changeset
47 the ``default`` branch, but this can be changed by using the ``-b/--branch``
1115
43cd1fa80992 help: remove pre-1.5 text
Sean Farley <sean.michael.farley@gmail.com>
parents: 1094
diff changeset
48 option. To force single directory clone, use hgsubversion.layout option (see
43cd1fa80992 help: remove pre-1.5 text
Sean Farley <sean.michael.farley@gmail.com>
parents: 1094
diff changeset
49 below for detailed help) ::
737
708234ad6c97 usage examples for single directory clones
anatoly techtonik <techtonik@gmail.com>
parents: 736
diff changeset
50
708234ad6c97 usage examples for single directory clones
anatoly techtonik <techtonik@gmail.com>
parents: 736
diff changeset
51 $ hg clone --layout single svn+http://python-nose.googlecode.com/svn nose-hg
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
52
1092
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
53 Finally, if you want to clone two or more directores as separate
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
54 branches, use the custom layout. See the documentation below for the
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
55 ``hgsubversionbranch.*`` configuration for detailed help.
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
56
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
57 Pulling new revisions into an already-converted repository is the same
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
58 as from any other Mercurial source. Within the first example above,
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
59 the following three commands are all equivalent::
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
60
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
61 $ hg pull
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
62 $ hg pull default
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
63 $ hg pull http://python-nose.googlecode.com/svn
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
64
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
65 Sometimes, past repository history is of little or no interest, and
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
66 all one wants is to start from today and work forward. Using
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
67 ``--startrev HEAD`` causes the initial clone to only convert the
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
68 latest revision; later pulls will convert all subsequent
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
69 revisions. Please note that this only works for single-directory
737
708234ad6c97 usage examples for single directory clones
anatoly techtonik <techtonik@gmail.com>
parents: 736
diff changeset
70 clones::
708234ad6c97 usage examples for single directory clones
anatoly techtonik <techtonik@gmail.com>
parents: 736
diff changeset
71
708234ad6c97 usage examples for single directory clones
anatoly techtonik <techtonik@gmail.com>
parents: 736
diff changeset
72 $ hg clone --startrev HEAD http://python-nose.googlecode.com/svn/trunk nose-hg
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
73
722
aa24148a7454 uisetup: add fromsvn() and svnrev() revsets.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 714
diff changeset
74 Finding and displaying Subversion revisions
707
cb32d90f915e templatekw: clean up implementation & test; add help.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 704
diff changeset
75 -------------------------------------------
cb32d90f915e templatekw: clean up implementation & test; add help.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 704
diff changeset
76
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
77 For revealing the relationship between Mercurial changesets and
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
78 Subversion revisions, hgsubversion provides three template keywords:
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
79
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
80 :svnrev: Expanded to the original Subversion revision number.
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
81 :svnpath: The path within the repository that the changeset represents.
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
82 :svnuuid: The Universally Unique Identifier of the Subversion repository.
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
83
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
84 An example::
707
cb32d90f915e templatekw: clean up implementation & test; add help.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 704
diff changeset
85
cb32d90f915e templatekw: clean up implementation & test; add help.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 704
diff changeset
86 $ hg log --template='{rev}:{node|short} {author|user}\nsvn: {svnrev}\n'
cb32d90f915e templatekw: clean up implementation & test; add help.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 704
diff changeset
87
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
88 For finding changesets from Subversion, hgsubversion extends revsets
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
89 to provide two new selectors:
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
90
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
91 :fromsvn: Select changesets that originate from Subversion. Takes no
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
92 arguments.
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
93 :svnrev: Select changesets that originate in a specific Subversion
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
94 revision. Takes a revision argument.
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
95
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
96 For example::
722
aa24148a7454 uisetup: add fromsvn() and svnrev() revsets.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 714
diff changeset
97
aa24148a7454 uisetup: add fromsvn() and svnrev() revsets.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 714
diff changeset
98 $ hg log -r 'fromsvn()'
aa24148a7454 uisetup: add fromsvn() and svnrev() revsets.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 714
diff changeset
99 $ hg log -r 'svnrev(500)'
aa24148a7454 uisetup: add fromsvn() and svnrev() revsets.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 714
diff changeset
100
1116
05db8a43042e help: remove pre-1.6 text
Sean Farley <sean.michael.farley@gmail.com>
parents: 1115
diff changeset
101 See ``hg help revsets`` for details.
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
102
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
103 Support for externals
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
104 ---------------------
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
105
775
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
106 Subversion externals conversion is implemented for standard layouts.
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
107
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
108 Using .hgsvnexternals (default mode)
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
109 ====================================
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
110
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
111 .hgsvnexternals has been implemented before Mercurial supported proper
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
112 subrepositories. Externals as subrepositories should now be preferred
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
113 as they offer almost all .hgsvnexternals features with the benefit of
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
114 a better integration with Mercurial commands.
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
115
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
116 ``svn:externals`` properties are serialized into a single
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
117 ``.hgsvnexternals`` file having the following syntax::
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
118
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
119 [.]
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
120 common1 http://path/to/external/svn/repo1
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
121 ...additional svn:externals properties lines...
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
122 [dir2]
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
123 common2 -r123 http://path/to/external/svn/repo2
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
124 ...additional svn:externals properties lines...
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
125
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
126 A header line in brackets specifies the directory the property applies
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
127 to, where '.' indicates the project root directory. The property content
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
128 follows the header, with every content line being prefixed by a single
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
129 space. Note that the property lines have a format identical to
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
130 svn:externals properties as used in Subversion, and do not support the
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
131 hgsubversion extended svn+http:// URL format.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
132
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
133 Issuing the command ``hg svn updateexternals`` with the ``.hgsvnexternals``
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
134 example above would fetch the latest revision of `repo1` into the subdirectory
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
135 `./common1`, and revision 123 of `repo2` into `dir2/common2`. Note that
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
136 ``.hgsvnexternals`` must be tracked by Mercurial before this will work. If
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
137 ``.hgsvnexternals`` is created or changed, it
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
138 will not be pushed to the related Subversion repository, but its
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
139 contents **will** be used to update ``svn:externals`` properties on the
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
140 related Subversion repository.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
141
765
62c9e6bd2ca7 docs: document new config knob for externals support
Augie Fackler <durin42@gmail.com>
parents: 740
diff changeset
142 Alternatively, one can use the ``hgsubversion.externals`` in hgrc to
62c9e6bd2ca7 docs: document new config knob for externals support
Augie Fackler <durin42@gmail.com>
parents: 740
diff changeset
143 specify ``subrepos`` as the externals mode. In this mode, ``.hgsub``
62c9e6bd2ca7 docs: document new config knob for externals support
Augie Fackler <durin42@gmail.com>
parents: 740
diff changeset
144 and ``.hgsubstate`` files will be used instead of
1117
7365034e8f70 help: remove pre-1.7 text
Sean Farley <sean.michael.farley@gmail.com>
parents: 1116
diff changeset
145 ``.hgsvnexternals``.
765
62c9e6bd2ca7 docs: document new config knob for externals support
Augie Fackler <durin42@gmail.com>
parents: 740
diff changeset
146
775
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
147
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
148 Using Subrepositories
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
149 =====================
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
150
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
151 Set:
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
152
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
153 [hgsubversion]
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
154 externals = subrepos
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
155
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
156 to enable this mode.
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
157
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
158 ``svn:externals`` properties are serialized into the subrepositories
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
159 metadata files, ``.hgsub`` and ``.hgsubstate``. The following
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
160 ``svn:externals`` entry:
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
161
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
162 -r23 ^/externals/project1 deps/project1
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
163
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
164 set on the "subdir" directory becomes:
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
165
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
166 (.hgsub)
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
167 subdir/deps/project1 = [hgsubversion] subdir:-r{REV} ^/externals/project1 deps/project1
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
168
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
169 (.hgsubstate)
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
170 23 subdir/deps/project1
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
171
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
172 At this point everything works like a regular svn subrepository. The
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
173 right part of the .hgsub entry reads like:
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
174
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
175 TARGETDIR:REWRITTEN_EXTERNAL_DEFINITION
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
176
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
177 where REWRITTEN_EXTERNAL_DEFINITION is like the original definition
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
178 with the revision identifier replaced with {REV}.
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
179
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
180 This mode has the following limitations:
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
181
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
182 * "hgsubversion" subrepositories require hgsubversion extension to be
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
183 available. To operate transparently on ``svn:externals`` we have to
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
184 stay as close as possible to their original property
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
185 format. Besides, relative externals require a parent subversion
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
186 repository to be resolved while stock Mercurial only supports
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
187 absolute subversion paths.
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
188
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
189 * Leading or trailing whitespaces in the external definitions are lost
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
190
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
191 * Leading or trailing whitespaces in the target directory are lost
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
192
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
193 * The external definition should not contain {REV}
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
194
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
195 * Unversioned definitions are pulled but the behaviour upon
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
196 update/merge is not clearly defined. We tried to preserve the
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
197 .hgsubstate as "HEAD" but the subrepository will probably not be
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
198 updated when the hg repository is updated. Given subrepositories
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
199 were designed not to support unversioned dependencies, this is
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
200 unlikely to be fixed.
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
201
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
202 * .hgsub and .hgsubstate are currently overwritten and
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
203 non-[hgsubversion] subrepos entries are lost. This could be fixed by
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
204 editing these files more carefully.
7597ea43a37e Document subrepository externals
Patrick Mezard <pmezard@gmail.com>
parents: 769
diff changeset
205
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
206 Limitations
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
207 -----------
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
208
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
209 Currently, pushing to Subversion destroys the original changesets and replaces
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
210 them with new ones converted from the resulting commits. Due to the intricacies
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
211 of Subversion semantics, these converted changesets may differ in subtle ways
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
212 from the original Mercurial changesets. For example, the commit date almost
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
213 always changes. This makes hgsubversion unsuitable for use as a two-way bridge.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
214
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
215 When converting from Subversion, hgsubversion does not recognize merge-info, and
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
216 does not create merges based on it. Similarly, Mercurial merges cannot be pushed
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
217 to Subversion.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
218
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
219 Changesets that create tags cannot be pushed to Subversion, as support for
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
220 creating Subversion tags has not yet been implemented.
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
221
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
222 Standard layout does not work with repositories that use unconventional
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
223 layouts. Thus, only single directory clones can be made of such repositories.
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
224
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
225 When interacting with Subversion, hgsubversion relies on information about the
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
226 previously converted changesets. This information will not be updated if pushing
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
227 or pulling converted changesets to or from any other source. To regenerate the
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
228 stored metadata, run ``hg svn rebuildmeta [URI]``. This must also be done if any
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
229 converted changesets are ever removed from the repository.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
230
703
ccac5ac68e71 subversion.rst: list memory leaks in the section on limitations
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 701
diff changeset
231 Under certain circumstances a long-running conversion can leak substantial
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
232 amounts of memory, on the order of 100MB per 1000 converted revisions. The
703
ccac5ac68e71 subversion.rst: list memory leaks in the section on limitations
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 701
diff changeset
233 leaks appear to be persistent and unavoidable using the SWIG bindings. When
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
234 using the new experimental Subvertpy bindings, leaks have only been observed
703
ccac5ac68e71 subversion.rst: list memory leaks in the section on limitations
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 701
diff changeset
235 accessing FSFS repositories over the file protocol.
ccac5ac68e71 subversion.rst: list memory leaks in the section on limitations
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 701
diff changeset
236
736
fdb338266705 help topic: mention how "hg clone" can delete stuff.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 735
diff changeset
237 Should the initial clone fail with an error, Mercurial will delete the entire
fdb338266705 help topic: mention how "hg clone" can delete stuff.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 735
diff changeset
238 repository, including any revisions successfully converted. This can be
fdb338266705 help topic: mention how "hg clone" can delete stuff.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 735
diff changeset
239 particularly undesirable for long-running clones. In these cases, we suggest
fdb338266705 help topic: mention how "hg clone" can delete stuff.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 735
diff changeset
240 using the ``-r/--rev`` option to only clone a few revisions initially. After
fdb338266705 help topic: mention how "hg clone" can delete stuff.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 735
diff changeset
241 that, an ``hg pull`` in the cloned repository will be perfectly safe.
fdb338266705 help topic: mention how "hg clone" can delete stuff.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 735
diff changeset
242
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
243 It is not possible to interact with more than one Subversion repository per
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
244 Mercurial clone. Please note that this also applies to more than one path within
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
245 the same Subversion repository.
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
246
686
0c67d97f54be subversion.rst: mention lack of directory tracking (see issue 202)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 685
diff changeset
247 Mercurial does not track directories, and as a result, any empty directories
0c67d97f54be subversion.rst: mention lack of directory tracking (see issue 202)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 685
diff changeset
248 in Subversion cannot be represented in the resulting Mercurial repository.
0c67d97f54be subversion.rst: mention lack of directory tracking (see issue 202)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 685
diff changeset
249
704
c9811351627c subversion.rst: mention externals support limitations.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 703
diff changeset
250 Externals support requires that the ``svn`` command line utility is available.
c9811351627c subversion.rst: mention externals support limitations.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 703
diff changeset
251 In addition, externals support has been disabled for single directory clones,
c9811351627c subversion.rst: mention externals support limitations.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 703
diff changeset
252 due to known bugs.
c9811351627c subversion.rst: mention externals support limitations.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 703
diff changeset
253
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
254 Advanced Configuration
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
255 ----------------------
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
256
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
257 The operation of hgsubversion can be customized by the following configuration
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
258 settings:
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
259
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
260 ``hgsubversion.authormap``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
261
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
262 Path to a file for mapping usernames from Subversion to Mercurial. For
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
263 example::
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
264
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
265 joe = Joe User <joe@example.com>
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
266
735
c2b9e08ecf10 maps: map a missing author to '(no author)'
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 722
diff changeset
267 Some Subversion conversion tools create revisions without
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
268 specifying an author. Such author names are mapped to ``(no
735
c2b9e08ecf10 maps: map a missing author to '(no author)'
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 722
diff changeset
269 author)``, similar to how ``svn log`` will display them.
c2b9e08ecf10 maps: map a missing author to '(no author)'
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 722
diff changeset
270
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
271 ``hgsubversion.defaulthost``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
272
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
273 This option specifies the hostname to append to unmapped Subversion
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
274 usernames. The default is to append the UUID of the Subversion repository
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
275 as a hostname. That is, an author of ``bob`` may be mapped to
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
276 ``bob@0b1d8996-7ded-4192-9199-38e2bec458fb``.
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
277
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
278 If this option set to an empty string, the Subversion authors will be used
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
279 with no hostname component.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
280
769
cc1d4aa3ba41 configurable substitution for empty commit message (fixes #195)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 765
diff changeset
281 ``hgsubversion.defaultmessage``
cc1d4aa3ba41 configurable substitution for empty commit message (fixes #195)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 765
diff changeset
282
cc1d4aa3ba41 configurable substitution for empty commit message (fixes #195)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 765
diff changeset
283 This option selects what to substitute for an empty log
cc1d4aa3ba41 configurable substitution for empty commit message (fixes #195)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 765
diff changeset
284 message. The default is to substitute three dots, or ``...``.
cc1d4aa3ba41 configurable substitution for empty commit message (fixes #195)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 765
diff changeset
285
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
286 ``hgsubversion.defaultauthors``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
287
685
d4781cff2adc subversion.rst: fix 'typo' in help for the hgsubversion.defaultauthors option.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 680
diff changeset
288 Setting this boolean option to false will cause hgsubversion to abort a
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
289 conversion if a revision has an author not listed in the author map.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
290
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
291 ``hgsubversion.branch``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
292
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
293 Mark converted changesets as belonging to this branch or, if unspecified,
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
294 ``default``. Please note that this option is not supported for standard
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
295 layout clones.
701
3b8088de027d clone: replace the --singlebranch with overloading for --branch
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 686
diff changeset
296
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
297 ``hgsubversion.branchmap``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
298
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
299 Path to a file for changing branch names during the conversion from
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
300 Subversion to Mercurial.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
301
1093
791382a21cc4 layouts: add support for configuring branches directory
David Schleimer <dschleimer@fb.com>
parents: 1092
diff changeset
302 ``hgsubversion.branchdir``
791382a21cc4 layouts: add support for configuring branches directory
David Schleimer <dschleimer@fb.com>
parents: 1092
diff changeset
303
791382a21cc4 layouts: add support for configuring branches directory
David Schleimer <dschleimer@fb.com>
parents: 1092
diff changeset
304 Specifies the subdirectory to look for branches under. The
791382a21cc4 layouts: add support for configuring branches directory
David Schleimer <dschleimer@fb.com>
parents: 1092
diff changeset
305 default is ``branches``. This option has no effect for
791382a21cc4 layouts: add support for configuring branches directory
David Schleimer <dschleimer@fb.com>
parents: 1092
diff changeset
306 single-directory clones.
791382a21cc4 layouts: add support for configuring branches directory
David Schleimer <dschleimer@fb.com>
parents: 1092
diff changeset
307
1094
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
308 ``hgsubversion.infix``
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
309
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
310 Specifies a path to strip between relative to the trunk/branch/tag
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
311 root as the mercurial root. This can be used to import a single
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
312 sub-project when you have several sub-projects under a single
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
313 trunk/branches/tags layout in subversion.
9a7e3dbd0f6e layouts: add support for an infix between tbt and the hg root
David Schleimer <dschleimer@fb.com>
parents: 1093
diff changeset
314
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
315 ``hgsubversion.filemap``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
316
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
317 Path to a file for filtering files during the conversion. Files may either
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
318 be included or excluded. See the documentation for ``hg convert`` for more
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
319 information on filemaps.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
320
944
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
321 ``hgsubversion.filestoresize``
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
322
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
323 Maximum amount of temporary edited files data to be kept in memory,
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
324 in megabytes. The replay and stupid mode pull data by retrieving
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
325 delta information from the subversion repository and applying it on
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
326 known files data. Since the order of file edits is driven by the
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
327 subversion delta information order, edited files cannot be committed
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
328 immediately and are kept until all of them have been processed for
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
329 each changeset. ``filestoresize`` defines the maximum amount of
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
330 files data to be kept in memory before falling back to storing them
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
331 in a temporary directory. This setting is important with
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
332 repositories containing many files or large ones as both the
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
333 application of deltas and Mercurial commit process require the whole
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
334 file data to be available in memory. By limiting the amount of
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
335 temporary data kept in memory, larger files can be retrieved, at the
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
336 price of slower disk operations. Set it to a negative value to
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
337 disable the fallback behaviour and keep everything in memory.
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
338 Default to 200.
d6db289f1548 pull: add hgsubversion.filestoresize to control memory consumption
Patrick Mezard <patrick@mezard.eu>
parents: 908
diff changeset
339
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
340 ``hgsubversion.username``, ``hgsubversion.password``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
341
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
342 Set the username or password for accessing Subversion repositories.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
343
844
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
344 ``hgsubversion.password_stores``
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
345
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
346 List of methods to use for storing passwords (similar to the option of the
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
347 same name in the subversion configuration files). Default is
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
348 ``gnome_keyring,keychain,kwallet,windows``. Password stores can be disabled
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
349 completely by setting this to an empty value.
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
350
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
351 .. NOTE::
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
352
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
353 Password stores are only supported with the SWIG bindings.
95d040755254 Added ability to configure the password stores
Jerome M. BERGER <jerome.berger@sagemcom.com>
parents: 776
diff changeset
354
1471
6bc2a2f61923 svnmeta: add a config option to use sqlite revmap
Jun Wu <quark@fb.com>
parents: 1324
diff changeset
355 ``hgsubversion.revmapimpl``
6bc2a2f61923 svnmeta: add a config option to use sqlite revmap
Jun Wu <quark@fb.com>
parents: 1324
diff changeset
356
1546
ddfd60760fac help: reword revmapimpl text
Jun Wu <quark@fb.com>
parents: 1478
diff changeset
357 Set the revision map implementation. Default is ``plain``, which works
1471
6bc2a2f61923 svnmeta: add a config option to use sqlite revmap
Jun Wu <quark@fb.com>
parents: 1324
diff changeset
358 well for small repos. ``sqlite`` is a sqlite based implementation that
1546
ddfd60760fac help: reword revmapimpl text
Jun Wu <quark@fb.com>
parents: 1478
diff changeset
359 works better for large repos with a lot of revisions.
1471
6bc2a2f61923 svnmeta: add a config option to use sqlite revmap
Jun Wu <quark@fb.com>
parents: 1324
diff changeset
360
6bc2a2f61923 svnmeta: add a config option to use sqlite revmap
Jun Wu <quark@fb.com>
parents: 1324
diff changeset
361 If it is set to an implementation different from what the repo is using,
6bc2a2f61923 svnmeta: add a config option to use sqlite revmap
Jun Wu <quark@fb.com>
parents: 1324
diff changeset
362 a migration will run automatically when the revision map is accessed.
6bc2a2f61923 svnmeta: add a config option to use sqlite revmap
Jun Wu <quark@fb.com>
parents: 1324
diff changeset
363
1478
797c7b58a735 maps: add a config option to tweak sqlite
Jun Wu <quark@fb.com>
parents: 1471
diff changeset
364 ``hgsubversion.sqlitepragmas``
797c7b58a735 maps: add a config option to tweak sqlite
Jun Wu <quark@fb.com>
parents: 1471
diff changeset
365
797c7b58a735 maps: add a config option to tweak sqlite
Jun Wu <quark@fb.com>
parents: 1471
diff changeset
366 A list of sqlite PRAGMA statements to tweak sqlite. Each item should be
797c7b58a735 maps: add a config option to tweak sqlite
Jun Wu <quark@fb.com>
parents: 1471
diff changeset
367 in the format ``key=value`` without ``PRAGMA``, or spaces, or quotation
797c7b58a735 maps: add a config option to tweak sqlite
Jun Wu <quark@fb.com>
parents: 1471
diff changeset
368 marks. Refer to https://www.sqlite.org/pragma.html for possible options.
797c7b58a735 maps: add a config option to tweak sqlite
Jun Wu <quark@fb.com>
parents: 1471
diff changeset
369
797c7b58a735 maps: add a config option to tweak sqlite
Jun Wu <quark@fb.com>
parents: 1471
diff changeset
370 For example, setting it to ``synchronous=0, journal_mode=memory`` will
797c7b58a735 maps: add a config option to tweak sqlite
Jun Wu <quark@fb.com>
parents: 1471
diff changeset
371 give you better performance at the cost of possible database corruption.
797c7b58a735 maps: add a config option to tweak sqlite
Jun Wu <quark@fb.com>
parents: 1471
diff changeset
372
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
373 ``hgsubversion.stupid``
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
374 Setting this boolean option to true will force using a slower method for
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
375 pulling revisions from Subversion. This method is compatible with servers
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
376 using very old versions of Subversion, and hgsubversion falls back to it
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
377 when necessary.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
378
765
62c9e6bd2ca7 docs: document new config knob for externals support
Augie Fackler <durin42@gmail.com>
parents: 740
diff changeset
379 ``hgsubversion.externals``
1117
7365034e8f70 help: remove pre-1.7 text
Sean Farley <sean.michael.farley@gmail.com>
parents: 1116
diff changeset
380 Set to ``subrepos`` to switch to subrepos-based externals support. Default
7365034e8f70 help: remove pre-1.7 text
Sean Farley <sean.michael.farley@gmail.com>
parents: 1116
diff changeset
381 is ``svnexternals``, which uses a custom hgsubversion-specific format and
7365034e8f70 help: remove pre-1.7 text
Sean Farley <sean.michael.farley@gmail.com>
parents: 1116
diff changeset
382 works on older versions of Mercurial. Use ``ignore`` to avoid converting
7365034e8f70 help: remove pre-1.7 text
Sean Farley <sean.michael.farley@gmail.com>
parents: 1116
diff changeset
383 externals.
765
62c9e6bd2ca7 docs: document new config knob for externals support
Augie Fackler <durin42@gmail.com>
parents: 740
diff changeset
384
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
385 The following options only have an effect on the initial clone of a repository:
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
386
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
387 ``hgsubversion.layout``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
388
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
389 Set the layout of the repository. ``standard`` assumes a normal
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
390 trunk/branches/tags layout. ``single`` means that the entire
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
391 repository is converted into a single branch. The default,
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
392 ``auto``, causes hgsubversion to assume a standard layout if any
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
393 of trunk, branches, or tags exist within the specified directory
1092
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
394 on the server. ``custom`` causes hgsubversion to read the
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
395 ``hgsubversionbranch`` config section to determine the repository
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
396 layout.
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
397
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
398 ``hgsubversion.startrev``
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
399
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
400 Convert Subversion revisions starting at the one specified, either an
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
401 integer revision or ``HEAD``; ``HEAD`` causes only the latest revision to be
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
402 pulled. The default is to pull everything.
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
403
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
404 ``hgsubversion.tagpaths``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
405
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
406 Specifies one or more paths in the Subversion repository that
714
7e55483a56ca help topic: cosmetic improvements.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 712
diff changeset
407 contain tags. The default is to only look in ``tags``. This option has no
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
408 effect for single-directory clones.
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
409
908
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
410 ``hgsubversion.unsafeskip``
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
411
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
412 A space or comma separated list of Subversion revision numbers to
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
413 skip over when pulling or cloning. This can be useful for
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
414 troublesome commits, such as someone accidentally deleting trunk
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
415 and then restoring it. (In delete-and-restore cases, you may also
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
416 need to clone or pull in multiple steps, to help hgsubversion
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
417 track history correctly.)
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
418
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
419 NOTE: this option is dangerous. Careless use can make it
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
420 impossible to pull later Subversion revisions cleanly, e.g. if the
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
421 content of a file depends on changes made in a skipped rev.
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
422 Skipping a rev may also prevent future invocations of ``hg svn
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
423 verify`` from succeeding (if the contents of the Mercurial repo
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
424 become out of step with the contents of the Subversion repo). If
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
425 you use this option, be sure to carefully check the result of a
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
426 pull afterwards.
c4ee11a5d04c pull: add a hgsubversion.unsafeskip option to omit unwanted revs
Bryan O'Sullivan <bryano@fb.com>
parents: 844
diff changeset
427
1324
dde1ade36a49 fixes indent for hgsubversionbranch section in extension help
Andrei Dziahel <develop7@develop7.info>
parents: 1117
diff changeset
428 ``hgsubversionbranch.*``
1092
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
429
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
430 Use this config section with the custom layout to specify a cusomt
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
431 mapping of subversion path to Mercurial branch. This is useful if
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
432 your layout is substantially different from the standard
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
433 trunk/branches/tags layout and/or you are only interested in a few
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
434 branches.
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
435
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
436 Example config that pulls in trunk as the default branch,
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
437 personal/alice as the alice branch, and releases/2.0/2.7 as
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
438 release-2.7::
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
439
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
440 [hgsubversionbranch]
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
441 default = trunk
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
442 alice = personal/alice
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
443 release-2.7 = releases/2.0/2.7
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
444
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
445 Note that it is an error to specify more than one branch for a
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
446 given path, or to sepecify nested paths (e.g. releases/2.0 and
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
447 releases/2.0/2.7)
cd0d14e25757 layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents: 944
diff changeset
448
659
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
449 Please note that some of these options may be specified as command line options
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
450 as well, and when done so, will override the configuration. If an authormap,
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
451 filemap or branchmap is specified, its contents will be read and stored for use
55d6697b975a help: add an rst file containing some helpful instructions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
diff changeset
452 in future pulls.
680
703f33576ad8 svnwrap: add runtime override for choice of Subversion bindings
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 659
diff changeset
453
703f33576ad8 svnwrap: add runtime override for choice of Subversion bindings
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 659
diff changeset
454 Finally, the following environment variables can be used for testing a
703f33576ad8 svnwrap: add runtime override for choice of Subversion bindings
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 659
diff changeset
455 deployment of hgsubversion:
703f33576ad8 svnwrap: add runtime override for choice of Subversion bindings
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 659
diff changeset
456
740
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
457 ``HGSUBVERSION_BINDINGS``
c8c438b010aa help topic: numerous cleanups.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 737
diff changeset
458
680
703f33576ad8 svnwrap: add runtime override for choice of Subversion bindings
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 659
diff changeset
459 By default, hgsubversion will use Subvertpy, but fall back to the SWIG
703f33576ad8 svnwrap: add runtime override for choice of Subversion bindings
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 659
diff changeset
460 bindings. Set this variable to either ``SWIG`` or ``Subvertpy`` (case-
703f33576ad8 svnwrap: add runtime override for choice of Subversion bindings
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 659
diff changeset
461 insensitive) to force that set of bindings.