From Fedora Project Wiki

Revision as of 02:51, 11 June 2009 by Quaid (talk | contribs) (adding another fab Docs how to!)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

In addition to needing the cvsfedora group, a user needs to be in the appropriate CVS access control list (ACL) for docs.fedoraproject.org.

For these examples, the username you is your username when you are acting as administrator and adding someone to the ACL. The username them is the FAS username of the person or persons you are adding to the ACLs.

First, make sure you know where you are:

[you@localhost CVSROOT]$ pwd
/home/you/Documents/projects/fedora-docs-cvs/CVSROOT
[you@localhost CVSROOT]$ cat CVS/Root 
:ext:you@cvs.fedoraproject.org:/cvs/fedora
[you@localhost CVSROOT]$ cat CVS/Repository 
CVSROOT

Second, confirm that you are updated; doing both of these commands is overkill, but CVS is underkill, so you have to make up for it's problems:

 
[you@localhost CVSROOT]$ cvs up -d
cvs update: Updating .
[you@localhost CVSROOT]$ ls
acls   checkoutlist  config  cvswrappers  loginfo  notify   syncmail  verifymsg
avail  commitinfo    CVS     editinfo     modules  rcsinfo  taginfo
[you@localhost CVSROOT]$ cvs status avail 
===================================================================
File: avail            	Status: Up-to-date

   Working revision:	1.62
   Repository revision:	1.62	/cvs/fedora/CVSROOT/avail,v
   Sticky Tag:		(none)
   Sticky Date:		(none)
   Sticky Options:	(none)

Third, with your avail file updated and verified, edit it to add the user(s) to the proper module.

[you@localhost CVSROOT]$ vi avail

The lines are self-evident, and the file is well commented. In essence, each sub-directory us available for no one to edit until a specific line is created adding that directory. For example, the directory web is the top-level, so having permissions to read-write to that directory recurses down to all sub-directories. We sometimes add a line when it gets too long to read in ~70 characters width.

In this example, the user them had permissions to a set of sub-directories, and now is so busy and useful, access to the entire collection of documents is being added:

[you@localhost CVSROOT]$ cvs diff -u avail
Index: avail
===================================================================
RCS file: /cvs/fedora/CVSROOT/avail,v
retrieving revision 1.62
diff -u -r1.62 avail
--- avail	2 Jun 2009 23:19:54 -0000	1.62
+++ avail	11 Jun 2009 02:37:48 -0000
@@ -23,7 +23,7 @@
 unavail | | web
 avail | notting,sopwith,gdk,katzj,you,bjensen,mmcgrath,jjmcd | web
 avail | havill,hp,nman64,ivazquez,jkeating,glezos,pfrields,duffy,ricky,couf,tw2113 | web
-avail | sparks,jjmcd,ke4qqq | web
+avail | sparks,jjmcd,ke4qqq,them | web
 avail | sarahs,aalam,ccheng,noriko | web/html/docs/translation-faq
 avail | sarahs,aalam,ccheng,noriko | web/html/docs/translation-guide
 avail | sarahs,aalam,ccheng,noriko | web/html/docs/translation-windows
@@ -35,8 +35,6 @@
 avail | mdious,sparks | web/html/docs/selinux-guide
 avail | mdious,sparks,sradvan | web/html/docs/selinux-user-guide
 avail | sparks,sradvan | web/html/docs/security-guide
-avail | them | web/html/docs/install-guide
-avail | them | web/html/docs/user-guide
 

Fourth, commit your changes. They take effect immediately:

 
[you@localhost CVSROOT]$ cvs ci -m "adding them to everything, thanks for all the hard work" avail 
**** Access allowed: you is in ACL for CVSROOT.
Checking in avail;
/cvs/fedora/CVSROOT/avail,v  <--  avail
new revision: 1.63; previous revision: 1.62
done
Running syncmail...
Mailing relnotes@fedoraproject.org...
...syncmail done.
Running syncmail...
Mailing cvsextras@fedoraproject.org...
...syncmail done.
cvs commit: Rebuilding administrative file database

You are done. Bask in the glow.