diff mercurial/help.py @ 7693:e040f9d6b2f3

consolidated url help into urls help topic and added information about path aliases
author Bill Barry <after.fallout@gmail.com>
date Thu, 22 Jan 2009 11:02:50 -0700
parents b19850c7908a
children 14a42208d8af
line wrap: on
line diff
--- a/mercurial/help.py	Thu Jan 22 20:49:47 2009 +0100
+++ b/mercurial/help.py	Thu Jan 22 11:02:50 2009 -0700
@@ -331,4 +331,62 @@
           "foo bar" becomes "foo%20bar".
     - user: Any text. Returns the user portion of an email address.
     ''')),
+
+    (['urls'], _('Url Paths'),
+     _(r'''
+    Valid URLs are of the form:
+
+      local/filesystem/path (or file://local/filesystem/path)
+      http://[user[:pass]@]host[:port]/[path]
+      https://[user[:pass]@]host[:port]/[path]
+      ssh://[user[:pass]@]host[:port]/[path]
+
+    Paths in the local filesystem can either point to Mercurial
+    repositories or to bundle files (as created by 'hg bundle' or
+    'hg incoming --bundle').
+
+    An optional identifier after # indicates a particular branch, tag,
+    or changeset to deal with in the remote repository.
+
+    Some features, such as pushing to http:// and https:// URLs are
+    only possible if the feature is explicitly enabled on the
+    remote Mercurial server.
+
+    Some notes about using SSH with Mercurial:
+    - 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:
+        ssh://example.com//tmp/repository
+    - Mercurial doesn't use its own compression via SSH; the right thing
+      to do is to configure it in your ~/.ssh/config, e.g.:
+        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.
+
+    These urls can all be stored in your hgrc with path aliases under the
+    [paths] section like so:
+    [paths]
+    alias1 = URL1
+    alias2 = URL2
+    ...
+
+    You can then use the alias for any command that uses a url (for example
+    'hg pull alias1' would pull from the 'alias1' path).
+
+    Two path aliases are more important because they are used as defaults
+    when you do not provide the url to a command:
+
+    default:
+      When you create a repository with hg clone, the clone command saves
+      the location of the source repository as the 'default' path. This is
+      then used when you omit a path from the push and pull commands.
+
+    default-push:
+      The push command will look for a path named 'default-push', and
+      prefer it over 'default' if both are defined.
+    ''')),
 )