equal
deleted
inserted
replaced
2 |
2 |
3 mercurial-server makes a group of repositories available to the developers |
3 mercurial-server makes a group of repositories available to the developers |
4 you choose, identified by ssh keys, with easy key and access management |
4 you choose, identified by ssh keys, with easy key and access management |
5 based on hg. |
5 based on hg. |
6 |
6 |
7 http://hg.opensource.lshift.net/mercurial-server/ |
7 http://www.lshift.net/mercurial-server.html |
8 |
8 |
9 Copyright (C) 2008-2009 LShift Ltd. |
9 Copyright (C) 2008-2009 LShift Ltd. |
10 |
10 |
11 This program is free software; you can redistribute it and/or modify |
11 This program is free software; you can redistribute it and/or modify |
12 it under the terms of the GNU General Public License as published by |
12 it under the terms of the GNU General Public License as published by |
38 are authenticated only using SSH keys; no other form of authentication is |
38 are authenticated only using SSH keys; no other form of authentication is |
39 supported. |
39 supported. |
40 |
40 |
41 To give a user access to the repository, place their key in an |
41 To give a user access to the repository, place their key in an |
42 appropriately-named subdirectory of "/etc/mercurial-server/keys" and run |
42 appropriately-named subdirectory of "/etc/mercurial-server/keys" and run |
43 "/usr/local/lib/mercurial-server/refresh-auth". You can then control what |
43 "/usr/local/share/mercurial-server/refresh-auth". You can then control what |
44 access they have to what repositories by editing the control file |
44 access they have to what repositories by editing the control file |
45 "/etc/mercurial-server/access.conf", which can match the names of these keys |
45 "/etc/mercurial-server/access.conf", which can match the names of these keys |
46 against a glob pattern. |
46 against a glob pattern. |
47 |
47 |
48 For convenient remote control of access, you can instead (if you have the |
48 For convenient remote control of access, you can instead (if you have the |
73 Place your SSH public key in the directory "/etc/mercurial-server/keys/root". |
73 Place your SSH public key in the directory "/etc/mercurial-server/keys/root". |
74 I suggest creating yourself a directory and naming the key after your hostname |
74 I suggest creating yourself a directory and naming the key after your hostname |
75 (ie the file is called something like |
75 (ie the file is called something like |
76 "/etc/mercurial-server/keys/root/yourname/yourhostname") so that you can |
76 "/etc/mercurial-server/keys/root/yourname/yourhostname") so that you can |
77 easily manage users who have a different key on each host they use. Then run |
77 easily manage users who have a different key on each host they use. Then run |
78 "/usr/local/lib/mercurial-server/refresh-auth". |
78 "/usr/local/share/mercurial-server/refresh-auth". |
79 |
79 |
80 The repository is now ready to use, and you are now the sole user able to |
80 The repository is now ready to use, and you are now the sole user able to |
81 change and create repositories on this repository host. |
81 change and create repositories on this repository host. |
82 |
82 |
83 CREATING REPOSITORIES |
83 CREATING REPOSITORIES |
96 mercurial-server). You can add other root users by putting their keys next to |
96 mercurial-server). You can add other root users by putting their keys next to |
97 yours, or you can make less privileged users by putting their keys in the |
97 yours, or you can make less privileged users by putting their keys in the |
98 "keys/users" subdirectory - these users will be able to read and write to any |
98 "keys/users" subdirectory - these users will be able to read and write to any |
99 repository (except one - see below) but will not be able to create new |
99 repository (except one - see below) but will not be able to create new |
100 repositories. As always, when you change "/etc/mercurial-server/keys" you need |
100 repositories. As always, when you change "/etc/mercurial-server/keys" you need |
101 to re-run "/usr/local/lib/mercurial-server/refresh-auth". |
101 to re-run "/usr/local/share/mercurial-server/refresh-auth". |
102 |
102 |
103 LOGGING |
103 LOGGING |
104 |
104 |
105 Every push and pull is logged with the key used: see the file .hg/serve-log in |
105 Every push and pull is logged with the key used: see the file .hg/serve-log in |
106 each repository. |
106 each repository. |
149 THANKS |
149 THANKS |
150 |
150 |
151 Thanks for reading this far. If you use mercurial-server, please tell me about |
151 Thanks for reading this far. If you use mercurial-server, please tell me about |
152 it. |
152 it. |
153 |
153 |
154 Paul Crowley, 2009 |
154 Paul Crowley, paul@lshift.net, 2009 |
|
155 |