diff -ruw cvs-1.10.orig/src/cvs.h cvs-1.10/src/cvs.h
--- cvs-1.10.orig/src/cvs.h	Mon Jul 27 04:54:11 1998
+++ cvs-1.10/src/cvs.h	Sat Jun 26 03:00:07 1999
@@ -384,6 +384,7 @@
 extern int trace;		/* Show all commands */
 extern int noexec;		/* Don't modify disk anywhere */
 extern int logoff;		/* Don't write history entry */
+extern int nolock;		/* Don't do any locking */
 
 extern int top_level_admin;
 
diff -ruw cvs-1.10.orig/src/lock.c cvs-1.10/src/lock.c
--- cvs-1.10.orig/src/lock.c	Wed Mar  4 06:41:50 1998
+++ cvs-1.10/src/lock.c	Sat Jun 26 02:59:44 1999
@@ -243,7 +243,7 @@
     FILE *fp;
     char *tmp;
 
-    if (noexec)
+    if (noexec || nolock)
 	return (0);
 
     /* we only do one directory at a time for read locks! */
@@ -316,7 +316,7 @@
 {
     char *wait_repos;
 
-    if (noexec)
+    if (noexec || nolock)
 	return (0);
 
     /* We only know how to do one list at a time */
diff -ruw cvs-1.10.orig/src/main.c cvs-1.10/src/main.c
--- cvs-1.10.orig/src/main.c	Thu Aug 13 00:39:33 1998
+++ cvs-1.10/src/main.c	Sat Jun 26 03:46:12 1999
@@ -41,6 +41,7 @@
 int trace = 0;
 int noexec = 0;
 int logoff = 0;
+int nolock = 0;
 
 /* Set if we should be writing CVSADM directories at top level.  At
    least for now we'll make the default be off (the CVS 1.9, not CVS
@@ -485,7 +486,7 @@
     opterr = 1;
 
     while ((c = getopt_long
-            (argc, argv, "+Qqrwtnlvb:T:e:d:Hfz:s:xa", long_options, &option_index))
+            (argc, argv, "+QqrwtnlRvb:T:e:d:Hfz:s:xa", long_options, &option_index))
            != EOF)
     {
 	switch (c)
@@ -526,6 +527,10 @@
 	    case 'l':			/* Fall through */
 		logoff = 1;
 		break;
+	    case 'R':
+	        nolock = 1;
+		logoff = 1;
+		break;
 	    case 'v':
 		/* Having the year here is a good idea, so people have
 		   some idea of how long ago their version of CVS was
@@ -823,7 +828,7 @@
 		}
 		(void) strcat (path, "/");
 		(void) strcat (path, CVSROOTADM_HISTORY);
-		if (isfile (path) && !isaccessible (path, R_OK | W_OK))
+		if (!logoff && isfile (path) && !isaccessible (path, R_OK | W_OK))
 		{
 		    save_errno = errno;
 		    error (0, 0, "Sorry, you don't have read/write access to the history file");
