[m-dev.] for review: make anonymous remote CVS access available.

Tyson Dowd trd at cs.mu.OZ.AU
Wed Aug 9 12:34:24 AEST 2000


Hi,

We actually do have a page on remote CVS access... it just wasn't linked
to the rest of the page.

I also added `guest' with password `guest' to the
$CVSROOT/CVSROOT/passwd file and added `guest' to
$CVSROOT/CVSROOT/readers (which means read-only access for this user). 

===================================================================


Estimated hours taken: 1

Put the remote CVS stuff on the web page.

Originally we didn't make it public because 2 years ago there were some
security problems with client/server CVS.  Now this appears to be mostly
resolved.

Also, I've added the developer documentation page to the main menubar. 
It was a bit obscure and hard to find in the previous hierarchy.

include/contributions.inc:
	Link to the developer documentation page.

include/menubar.inc:
	Link to the developer documentation page.

information/developers/remote_cvs.html:
	Update this documentation to talk about anonymous access (which
	I just setup).

information/include/developer.inc:
	Link to the remote CVS document.

news/newsdb.inc:
	Add a news item about the availability of anonymous CVS access.


Index: include/contributions.inc
===================================================================
RCS file: /home/mercury1/repository/w3/include/contributions.inc,v
retrieving revision 1.1
diff -u -r1.1 contributions.inc
--- include/contributions.inc	1999/11/04 04:04:32	1.1
+++ include/contributions.inc	2000/08/09 02:21:24
@@ -1,5 +1,9 @@
 <H2>Contributed Programs and Libraries</H2>
 
+<H3>Developer Documentation</H3>
+There is some developer documentation at the Mercury
+
 <H3>Mercury Libraries and Programs</H3>
 If you've written some code using Mercury we'd love to find out about
 it.  If you think it might be in any way useful to other people, you
Index: include/menubar.inc
===================================================================
RCS file: /home/mercury1/repository/w3/include/menubar.inc,v
retrieving revision 1.6
diff -u -r1.6 menubar.inc
--- include/menubar.inc	1999/11/04 04:04:33	1.6
+++ include/menubar.inc	2000/08/09 02:23:37
@@ -15,7 +15,10 @@
    
     <a href="<?echo $root?>/information/documentation.html">Documentation</a>
     <BR>
-    <a href="<?echo $root?>/information/papers.html">Papers</a><BR>
+    <a href="<?echo $root?>/information/papers.html">Papers</a>
+    <BR>
+   &nbsp<a href="<?echo $root?>/information/developer.html">Developers</a>
+    <BR>
 </SMALL>
 
 <P>
Index: information/developers/remote_cvs.html
===================================================================
RCS file: /home/mercury1/repository/w3/information/developers/remote_cvs.html,v
retrieving revision 1.1
diff -u -r1.1 remote_cvs.html
--- information/developers/remote_cvs.html	1998/09/04 05:01:56	1.1
+++ information/developers/remote_cvs.html	2000/08/09 02:15:55
@@ -26,19 +26,68 @@
 	<li> A TCP/IP connection to the Internet.
 </ul>
 
-Preliminaries:
+Anonymous Access:
 <ul>
+	<li> The CVS server is running on <b>hydra.cs.mu.oz.au</b>, and the
+	repository is in the directory <b>/home/mercury1/repository</b>
+	<li> The anonymous access account is called <i>guest</i> with a
+		password of <i>guest</i>
+	<li> To login (you need to do this just once)
+<pre>
+	cvs -d :pserver:guest at hydra.cs.mu.oz.au:/home/mercury1/repository login
+</pre>
+	<li> The password is <i>guest</i>
+	<li> To checkout a module 
+<pre>
+	cvs -d :pserver:guest at hydra.cs.mu.oz.au:/home/mercury1/repository checkout mercury
+</pre>
+	<li> There is a list of modules later in this page.
+
+	<li> You will have read-only access to the repository.  If you
+	want to commit something you will need to get someone with
+	read-write access to do it for you.  If you send you patch to
+	the mercury-developers mailing list you should be able to get
+	this done.
+
+	<li> You almost certainly want to add the following lines to
+	your .cvsrc (in your home directory).
+
+<pre>
+	cvs -z6
+	diff -u -N
+	update -Pd
+</pre>
+
+	<li> This turns on compression in client/server transfers, uses
+	the preferred Mercury diff format (unified diff with new files
+	shown as diffs), prunes empty directories and picks up new
+	directories.
+
+	<li> Please remember that if you want to track the latest
+	releases, you may run into incompatibility problems unless you
+	update very regularly.  The Mercury compiler often relies on a
+	very recent version of the Mercury compiler to build from
+	scratch.  If you get out of date, it might be worth downloading
+	the latest release-of-the-day and installing it.
+</ul>
+
+Getting Write Access:
+<ul>
 	<li> The CVS server uses password authentication. You need to
 	  have a password installed in CVS's password file on
-	  the server end.
+	  the server end.  CVS stores your password (only very lightly
+	  encrypted) on your machine, so you won't have to remember your
+	  password or use it very often after you have logged in the
+	  first time.
 
 	<li> Generate a password using standard UNIX /etc/passwd style
-	  passwords. *Do not* use your normal password. A good way to
+	  passwords.  *Do not* use your normal password.  A good way to
 	  do this is change your password to something, copy the line
-	  from /etc/password, then change it back. Only the username and
+	  from /etc/password, then change it back.  If you have htpasswd
+	  installed using it is even easier.  Only the username and
 	  encrypted password are needed.<p>
 
-	  e.g. trd:s9FOR1a8DOxDs<p>
+	  e.g. myusername:s9FOR1a8DOxDs<p>
 
 	  (If your system uses shadow password files, the password field
 	  of /etc/passwd will not be meaningful; mail us if there is a problem).
@@ -55,13 +104,6 @@
 	  Mercury team, who will install it for you. If you have access to
 	  the CVS repository at the University of Melbourne, you can just
 	  add it to the file /home/mercury1/repository/CVSROOT/passwd.
-	  You also need an account on the machines where the cvs server
-	  is running which is in group mercury (the account doesn't need
-	  to be able to rlogin). If you can't create one yourself,
-	  you'll need to ask someone in the Mercury team to create one
-	  for you. (Mercury team - add a line to the CVS passwd file,
-	  and an account with * in the password field, /dev/null as
-	  its shell, and in group mercury, on hydra and mercury).
 
 	<li> Also, tell us what domain you're going to be accessing the
 	  repository from, so we can adjust our security setup to allow
@@ -69,8 +111,21 @@
 	  email address. (Mercury team - modify /etc/hosts.allow to
 	  allow that domain).
 
-	<li> Access via Windows or other non-UNIX platforms is untested,
-	  but theoretically possible.
+	<li> Access via Windows works just fine.  Most firewalls are
+	  setup to allow CVS access through.  You can get a free
+	  binary (and source) CVS for Windows from 
+	  <a href="http://www.cyclic.com/">www.cyclic.com</a>.
+	  Also there is a produce called 
+	  <a href="http://www.wincvs.com/">WinCVS</a> that should
+	  work (although we haven't tried it ourselves).
+
+	<li> There are some checks that are done via questions.  In
+	particular, our CVS repository does checks for up-to-date
+	copyright messages on all files.  These checks don't work very
+	well using the CVS `pserver' as mentioned here -- when you check
+	in it will complain that it doesn't know how to interact with
+	you.  Contact us if this is a big problem -- we know some
+	workarounds.
 </ul>
 
 Then (once you've been added to the passwd file):
@@ -78,15 +133,9 @@
 
 	<li> Set your CVSROOT environment variable to <p>
 	<ul>
-	  <li>:pserver:username at mercury.cs.mu.oz.au:/home/mercury1/repository
-	</ul>
-          or
-	<ul>
 	  <li>:pserver:username at hydra.cs.mu.oz.au:/home/mercury1/repository
 	</ul>
 
-	  (we have two because sometimes one of the machines is down - 
-	  it doesn't matter much which one you use). 
 	  <p>
 	  Make sure this environment variable is exported (in sh
 	  based shells, "export CVSROOT", in csh based shells, use
@@ -117,7 +166,7 @@
 				  extras and documentation. (8.9Mb)
 	  	<dt>tests	<dd> test cases for the compiler (0.72Mb)
 		<dt>clpr	<dd> the CLP(R) interface (0.88Mb)
-		<dt>www		<dd> the www page (7.5Mb - lots of papers)
+		<dt>w3		<dd> the www page (7.5Mb - lots of papers)
 		</dl>
 
 	  CVS should compress most of this stuff while sending it.
@@ -132,8 +181,8 @@
 	  to change something, discuss design trade-offs, and report
 	  on any development that you suspect will influence others.
 	  (Traffic is moderately high in this mailing list - between
-	  100 and 300 messages per month, so you should filter it if
-	  possible).
+	  100 and 300 messages per month, so you should filter into
+	  a separate folder if possible).
 
 	<li> Before committing any code, read the policy on reviews for the
 	  Mercury system. This can be found in the mercury CVS
@@ -148,15 +197,13 @@
 	  Basically, we don't commit broken code into the repository,
 	  and we don't commit un-reviewed code.
 
-	<li> We may decide to limit access to read-only at first, which
-	  makes it much harder for a remote user to make a mistake. 
-	  In this case, you'll need to contact us if you need to commit
-	  something to the repository.
-
 	<li> You'll need to be familiar with CVS to keep up to date with
 	  the development tree. If you haven't used it before, read the
 	  info pages on CVS and the documentation that comes with it.
-	  If you have any questions, just ask.
+	  There is a free book on CVS at 
+	  <a href="http://cvsbook.red-bean.com/">cvsbook.red-bean.com</a>
+
+	<li> If you have any questions, just ask.
 </ul>
 
 
Index: information/include/developer.inc
===================================================================
RCS file: /home/mercury1/repository/w3/information/include/developer.inc,v
retrieving revision 1.4
diff -u -r1.4 developer.inc
--- information/include/developer.inc	2000/01/10 05:39:00	1.4
+++ information/include/developer.inc	2000/08/09 02:09:17
@@ -9,6 +9,13 @@
 -------->
 <p>
 <ul>
+<li> 	<strong>Remote CVS Access</strong> <br>
+	How to access the CVS repository from your machine.<p>
+
+	Available in 
+	<a href="developers/remote_cvs.html">HTML</a>
+	<p>
+
 <li> 	<strong>C Coding Standard For The Mercury Project</strong> <br>
 	The standard used for the C source in the Mercury compiler. <p>
 
Index: news/newsdb.inc
===================================================================
RCS file: /home/mercury1/repository/w3/news/newsdb.inc,v
retrieving revision 1.47
diff -u -r1.47 newsdb.inc
--- news/newsdb.inc	2000/07/26 06:27:36	1.47
+++ news/newsdb.inc	2000/08/09 02:30:59
@@ -21,6 +21,14 @@
 
 $newsdb = array(
 
+"9 Aug 2000" => array("Remote CVS access",
+
+"We've made anonymous remote CVS access available to the Mercury CVS
+archive.  A page describing how to use remote CVS is available
+<A HREF=\"information/developers/remote_cvs.html\">here</A>.  Mercury, the test
+suite, MCORBA, and even these web pages are available via CVS."
+),
+
 "26 Jul 2000" => array("Mercury and Microsoft's .NET",
 
 "A page outlining the status of Mercury on Microsoft's net .NET


-- 
       Tyson Dowd           # 
                            #  Surreal humour isn't everyone's cup of fur.
     trd at cs.mu.oz.au        # 
http://www.cs.mu.oz.au/~trd #
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list