* 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.
+
+ 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.
You will need CVS and SSH. Windows users can get both by
installing Cygwin (<a
- href="http://www.cygwin.org">http://www.cygwin.org</a>)
+ href="http://www.cygwin.com">http://www.cygwin.com</a>)
Unix users will probably have those tools installed already.
updated sources, use:
<pre>
- cvs -z3 update mcs mono
+ cvs -z3 update -Pd mcs mono
</pre>
+ Note: The '-z3' enables compression for the whole cvs action.
+ The '-Pd' makes the update operation (P)rune directories that
+ have been deleted and get new (d)irectories added to the
+ repository.
+
** Making patches
Usually you will want to make a patch to contribute, and let
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
To do this, you have to "add" any new files that you created:
<pre>
- cvs add new-file.c
+ cvs add new-file.cs
</pre>
And then commit your changes to the repository:
<pre>
- cvs commit .
+ cvs commit file-1.cs file-2.cs
</pre>
** The Mailing List
** Recommendations
Please do not commit code that would break the compile to the
- CVS, because that normally wastes everybody's time.
+ 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.
- Make sure that you add all the files before you do a commit.
+ 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