update pic, add pic
[mono.git] / web / ccvs
index b04a1f1ed809eb89da606d0d6c5c4f1913811ccd..0363baa368de4de5a7329b285a2aaddde3a07681 100644 (file)
--- a/web/ccvs
+++ b/web/ccvs
@@ -1,15 +1,61 @@
 * CVS Access
 
        If you are an active Mono developer, you can get a CVS account
-       that hosts the Mono source code.  
+       that hosts the Mono source code.  This web page contains
+       details about how to use the CVS server as well as the
+       policies to use it.
 
        If you are not a developer, but want to track the development, please
        see the <a href="anoncvs.html">AnonCVS</a> instructions.
 
-       Send an e-mail to miguel with your public SSH key for this
-       purpose.  Please specify if the key was generated with SSH1 or SSH2.
+       Send an e-mail to miguel with your public OpenSSH key for this
+       purpose.  Please specify if the key was generated with SSH version 1
+       or version 2.
 
-       If you are using SSH2, please generate your key using:
+* Policies
+
+       Here are some policies about the use of the Mono CVS server.
+
+** Code License
+
+       If you are about to commit code to a module, the code that is
+       being commited should be released under the same license as
+       the code that the module has.
+
+       Check the license if you are unsure, but it is basically:
+       class libraries X11; compiler and tools: GPL; runtime: LGPL.
+
+       If in doubt, check with the maintainers of the module, or send
+       mail to mono-hackers-list@ximian.com.
+
+** Commiting code.
+
+       If you are the maintainer for a piece of code, feel free to
+       commit code, and delegate the work to others. 
+
+       Use ChangeLog entries so we can keep textual descriptions of
+       your work, and use the contents of your ChangeLog file as the
+       CVS commit message (ie, paste the contents of this into the
+       editor buffer).
+
+       If you are making changes to someone else's code, please make
+       sure you get in touch with the maintainer of that code before
+       applying patches.  You want to avoid commiting conflicting
+       work to someone else's code.
+
+       Please do not commit code that would break the compile to the
+       CVS, because that normally wastes everybody's time.  Two things 
+       are important in this step: trying to build your sources and making 
+       sure that you add all the new files before you do a commit.
+
+
+* Using CVS.
+
+       This is a small tutorial for using CVS.
+
+** Generating an SSH key
+
+       If you are using SSH version 2, please generate your key using:
 
 <pre>
        ssh-keygen -t rsa
 
        And mail me the id_rsa.pub file.
 
-       If you are using SSH1, run:
+       If you are using SSH version 1, run:
 <pre>
        ssh-keygen
 </pre>
 
        And mail me your identity.pub file.
 
+       If you are using SSH from SSH Communications Security (they offer
+       a free SSH client for personal use), you have to use OpenSSH to
+       convert your public key to the required format. You have to use 
+       OpenSSH's ssh-keygen program and write the following:
+
+<pre>
+       ssh-keygen -i -f id_XXX.pub > my_public_key.pub
+</pre>
+       
+       where the file id_XXX.pub is your public key file, 
+       normally located under ~/.ssh/ or ~/.ssh2/.
+       Send to miguel the my_public_key.pub file. 
+
+       The *exact* format for this file must be:
+
+<pre>
+       ssh-rsa XXXXX....
+</pre>
+
        You will need CVS and SSH.  Windows users can get both by
        installing Cygwin (<a
        href="http://www.cygwin.com">http://www.cygwin.com</a>)
        mail mono-list@ximian.com < file.diff
 </pre>
 
+** Keeping track of changes.
+
+       We provide two e-mail based mechanisms to keep track of
+       changes to the code base:
+       
+       <ul>
+               * <a href="mailto:mono-patches-request@ximian.com">
+                 mono-patches@ximian.com</a>: This mailing list receives
+                 in patch form all the changes that are being made to the
+                 CVS.
+
+               * <a href="mailto:mono-cvs-list-request@ximian.com">
+                 mono-cvs-list@ximian.com</a>: This mailing list only
+                 receives the CVS commit logs with a list of files
+                 modified.
+       </ul>
+
+       We hope to offer LXR and Bonsai in the future as well.
+
 ** Commiting your work
 
        Once you get approval to commit to the CVS, or if you are
        cvs commit file-1.cs file-2.cs
 </pre>
 
-** The Mailing List
+* The Mailing Lists
 
        To keep track of the various development and changes to the
        CVS tree, you can subscribe to the mono-cvs-list@ximian.com.
        This will send you an email message every time a change is
        made to the CVS repository, together with the information that
        the author of the changes submitted.
-       
-** Recommendations
 
-       Please do not commit code that would break the compile to the
-       CVS, because that normally wastes everybody's time.  Two things 
-       are important in this step: trying to build your sources and making 
-       sure that you add all the new files before you do a commit.
+       You might also want to track the live changes, subscribe to
+       the <a
+       href="mailto:mono-patches-request@ximian.com">mono-patches@ximian.com</a>
+       to receive the patches as they are checked into CVS. 
+
+** Recommendations
 
        To build the sources, most of the type trying the `make' command
        is enough.  In some cases (the class libraries) we use nant, so
        you need to run nant manually.
 
-       Use ChangeLog entries so we can keep textual descriptions of
-       your work, and use the contents of your ChangeLog file as the
-       CVS commit message (ie, paste the contents of this into the
-       editor buffer).
-
-       If you are making changes to someone else's code, please make
-       sure you get in touch with the maintainer of that code before
-       applying patches.  You want to avoid commiting conflicting
-       work to someone else's code.