urls.txt
63 lines
| 2.1 KiB
| text/plain
|
TextLexer
/ help / urls.txt
Martin Geisler
|
r9540 | Valid URLs are of the form:: | ||
local/filesystem/path[#revision] | ||||
file://local/filesystem/path[#revision] | ||||
http://[user[:pass]@]host[:port]/[path][#revision] | ||||
https://[user[:pass]@]host[:port]/[path][#revision] | ||||
ssh://[user[:pass]@]host[:port]/[path][#revision] | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | Paths in the local filesystem can either point to Mercurial | ||
repositories or to bundle files (as created by 'hg bundle' or 'hg | ||||
incoming --bundle'). | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | An optional identifier after # indicates a particular branch, tag, or | ||
changeset to use from the remote repository. See also 'hg help | ||||
revisions'. | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | Some features, such as pushing to http:// and https:// URLs are only | ||
possible if the feature is explicitly enabled on the remote Mercurial | ||||
server. | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | Some notes about using SSH with Mercurial: | ||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | - SSH requires an accessible shell account on the destination machine | ||
and a copy of hg in the remote path or specified with as remotecmd. | ||||
- path is relative to the remote user's home directory by default. Use | ||||
an extra slash at the start of a path to specify an absolute path:: | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | ssh://example.com//tmp/repository | ||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | - Mercurial doesn't use its own compression via SSH; the right thing | ||
to do is to configure it in your ~/.ssh/config, e.g.:: | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | Host *.mylocalnetwork.example.com | ||
Compression no | ||||
Host * | ||||
Compression yes | ||||
Alternatively specify "ssh -C" as your ssh command in your hgrc or | ||||
with the --ssh command line option. | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | These URLs can all be stored in your hgrc with path aliases under the | ||
[paths] section like so:: | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | [paths] | ||
alias1 = URL1 | ||||
alias2 = URL2 | ||||
... | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | You can then use the alias for any command that uses a URL (for | ||
timeless@mozdev.org
|
r9649 | example 'hg pull alias1' will be treated as 'hg pull URL1'). | ||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | Two path aliases are special because they are used as defaults when | ||
you do not provide the URL to a command: | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | default: | ||
When you create a repository with hg clone, the clone command saves | ||||
the location of the source repository as the new repository's | ||||
'default' path. This is then used when you omit path from push- and | ||||
pull-like commands (including incoming and outgoing). | ||||
Martin Geisler
|
r9539 | |||
Martin Geisler
|
r9540 | default-push: | ||
The push command will look for a path named 'default-push', and | ||||
prefer it over 'default' if both are defined. | ||||