1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
rprcs readme
1. intro
This readme is a quicky to get you going.
rprcs is a front end for prcs that uses rsh and rsync to communicate with
a remote site and do prcs's checkins and checkouts at the remote site.
For the moment rprcs is one shell script that manages all related files,
there is no real client and server as e.g. in prcs2. The site that
manages the repo is still called the server and the site that the user
is working on is still called the client.
2. installation
at the server site you need :
prcs, rsync, various GNU utils like (g)awk, sed
at the client site you need :
rprcs, prcs, rsync, various GNU utils like (g)awk, sed, grep, uniq, cat,
id, uname, tac, ...
All things are tested on a Redhat60 out of the box.
prcs: Version 1.2.14
rsync version 2.2.1 protocol version 19
I don't know if I used specific bash things, if you want to be sure, use bash
instead of sh.
2.1 install at server
At the remote site create a user called prcs, no password required.
Allow access via rsh to this user for foreign users with .rhosts file or
whatever. (I'm not really familiar with rsh, I know .rhosts is a security
leak, but I don't know any other way.) A sample .rhosts file might be :
localhost prcsuser
heining.bbf.uia.ac.be hugo
This file allows from the localhost user 'prcsuser' and from
heining.bbf.uia.ac.be user 'hugo' to execute commands via rsh. (The .hosts
file should be created in the home directory of the newly created user prcs.
It should be readable and writable by prcs itself, but not by anyone else.)
Setup a repository for user prcs : setup $PRCS_REPOSITORY somewhere in the
init script (.bashrc, .bash_profile) such that it points to a valid directory.
In the repository directory create a userfile like this one :
# user permission file
#
# user@host permissions
# c create projects
#
prcsuser@localhost c
prcsuser@multicad.uia.ac.be c
In the repository directory create a branch file like this :
#
# Server permission file
#
# user@host hostname project branch operations
# host must be fully branch owner read : read access
# qualified hostname write : checkin newer versions
# branch : derive branches
hugo@multicad.uia.ac.be localhost genesis HC23a rwb
prcsuser@localhost localhost bash 0 rwb
prcsuser@multicad.uia.ac.be localhost bash 0 rwb
hugo@multicad.uia.ac.be localhost bash 0 r
prcsuser@multicad.uia.ac.be multicad.uia.ac.be rash 1 rwb
prcsuser@multicad.uia.ac.be multicad.uia.ac.be foobar foo rw
prcsuser@multicad.uia.ac.be localhost foobar bar rwb
(Fill in some valid entries of your own)
2.2 install at client
copy rprcs to a directory somewhere in the $PATH var, install all other utils
that are needed. Map branches to remote sites in the file ~/RPRCS/hosts.txt.
It should look something like this :
localhost foobar bar
multicad.uia.ac.be foobar foo
You can also map branches via rprcs itself. Take a look at the sample session.
|