directory called @file{cvs} in the keeper's home directory. First
create this directory with @samp{mkdir $HOME/cvs}, then give group
members access to it with @samp{fs setacl -dir $HOME/cvs -acl
-@var{keeper}:pintos-cvs rlidwk}.
+@var{keeper}:pintos-cvs write}. Group members also need to be able to
+look up the @file{cvs} directory in the keeper's home directory, which
+can be enabled via @samp{fs setacl -dir $HOME -acl
+@var{keeper}:pintos-cvs l} (that's letter ``ell,'' not digit
+``one.'').@footnote{This command will allow group members to list the
+files in your home directory, but not read or write them. It should not
+create a security risk unless the names of files in your home directory
+are secret.}
Now initialize the repository.
To initialize the repository, execute @samp{cvs -d $HOME/cvs init}.
cvs -d $HOME/cvs import -m "Imported sources" pintos foobar start
@end example
+Here is a summary of the commands you have now executed:
+
+@example
+pts creategroup @var{keeper}:pintos-cvs
+pts adduser -user @var{username} -group @var{keeper}:pintos-cvs
+mkdir $HOME/cvs
+fs setacl -dir $HOME/cvs -acl @var{keeper}:pintos-cvs write
+fs setacl -dir $HOME -acl @var{keeper}:pintos-cvs l
+cvs -d $HOME/cvs init
+cd /usr/class/cs140/pintos/pintos
+cvs -d $HOME/cvs import -m "Imported sources" pintos foobar start
+@end example
+
The repository is now ready for use by any group member, as described
below. Keep in mind that the repository should only be accessed
using CVS commands---it is not generally useful to examine them by
@subsection Using CVS
To use CVS, start by check out a working copy of the contents of the
-CVS repository into a directory named @file{@var{dir}}, execute
+CVS repository into a directory named @file{@var{dir}}. To do so, execute
@samp{cvs -d ~@var{keeper}/cvs checkout -d @var{dir} pintos}, where
@var{keeper} is the CVS keeper's Leland username.
+(If this fails due to some kind of permission problem, then run
+@command{aklog} and try again. If it still doesn't work, log out and
+back in. If that still doesn't fix the problem, the CVS repository may
+not be initialized properly.)
+
At this point, you can modify any of the files in the working copy.
You can see the changes you've made with @samp{cvs diff -u}. If you
want to commit these changes back to the repository, making them