Mercurial > hg
annotate mercurial/help/hg-ssh.8.txt @ 38162:bdf344aea0ee
extensions: peek command table of disabled extensions without importing
With chg where demandimport disabled, and if disk cache not warm, it took
more than 5 seconds to get "unknown command" error when you typo a command
name. This is horrible UX.
The new implementation is less accurate than the original one as Python
can do anything at import time and cmdtable may be imported from another
module, but I think it's good enough.
Note that the new implementation has to parse .py files, which is slightly
slower than executing .pyc if demandimport is enabled.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Thu, 03 May 2018 18:38:02 +0900 |
parents | 4e934804cafe |
children |
rev | line source |
---|---|
29090
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
1 ======== |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
2 hg-ssh |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
3 ======== |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
4 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
5 ---------------------------------------- |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
6 restricted ssh login shell for Mercurial |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
7 ---------------------------------------- |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
8 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
9 :Author: Thomas Arendsen Hein <thomas@intevation.de> |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
10 :Organization: Mercurial |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
11 :Manual section: 8 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
12 :Manual group: Mercurial Manual |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
13 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
14 .. contents:: |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
15 :backlinks: top |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
16 :class: htmlonly |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
17 :depth: 1 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
18 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
19 Synopsis |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
20 """""""" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
21 **hg-ssh** repositories... |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
22 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
23 Description |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
24 """"""""""" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
25 **hg-ssh** is a wrapper for ssh access to a limited set of mercurial repos. |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
26 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
27 To be used in ~/.ssh/authorized_keys with the "command" option, see sshd(8): |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
28 command="hg-ssh path/to/repo1 /path/to/repo2 ~/repo3 ~user/repo4" ssh-dss ... |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
29 (probably together with these other useful options: |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
30 no-port-forwarding,no-X11-forwarding,no-agent-forwarding) |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
31 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
32 This allows pull/push over ssh from/to the repositories given as arguments. |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
33 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
34 If all your repositories are subdirectories of a common directory, you can |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
35 allow shorter paths with: |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
36 command="cd path/to/my/repositories && hg-ssh repo1 subdir/repo2" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
37 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
38 You can use pattern matching of your normal shell, e.g.: |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
39 command="cd repos && hg-ssh user/thomas/* projects/{mercurial,foo}" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
40 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
41 You can also add a --read-only flag to allow read-only access to a key, e.g.: |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
42 command="hg-ssh --read-only repos/\*" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
43 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
44 Bugs |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
45 """" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
46 Probably lots, please post them to the mailing list (see Resources_ |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
47 below) when you find them. |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
48 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
49 See Also |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
50 """""""" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
51 |hg(1)|_ |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
52 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
53 Author |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
54 """""" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
55 Written by Matt Mackall <mpm@selenic.com> |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
56 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
57 Resources |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
58 """"""""" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
59 Main Web Site: https://mercurial-scm.org/ |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
60 |
30244
4e934804cafe
help: replace selenic.com by mercurial-scm.org in man pages
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29090
diff
changeset
|
61 Source code repository: https://www.mercurial-scm.org/repo/hg |
29090
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
62 |
30244
4e934804cafe
help: replace selenic.com by mercurial-scm.org in man pages
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29090
diff
changeset
|
63 Mailing list: https://www.mercurial-scm.org/mailman/listinfo/mercurial/ |
29090
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
64 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
65 Copying |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
66 """"""" |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
67 Copyright (C) 2005-2016 Matt Mackall. |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
68 Free use of this software is granted under the terms of the GNU General |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
69 Public License version 2 or any later version. |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
70 |
7b52cb384c38
hg-ssh: copy doc string to man page
Sean Farley <sean@farley.io>
parents:
diff
changeset
|
71 .. include:: common.txt |