README
branchdebian
changeset 115 731a72b742db
parent 101 8b4cdc066967
child 163 8d73bcd75243
equal deleted inserted replaced
99:e99262dfa950 115:731a72b742db
     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