From: moodler CVS is the Concurrent Versioning System. It's a commonly used way
-of storing source code because it keeps versions of all files so
-that nothing is ever lost, and usage by different people is tracked. To use Moodle's CVS archive (as a developer) from a Unix machine, you first
- need to have an account on Sourceforge. For
- the example, let's assume your username is myusername and your
- password is mypassword. Secondly, you need to contact me (Martin Dougiamas) to get write access
- to particular directories. With that done, you should have all the permissions you need, so you just need
- to set up your machine and download the current sources so you can start working
- on them. Sourceforge CVS uses ssh as a transport layer for security, so you will have
- to set this CVS_RSH environment variable in your Unix shell: It's best to put this in your .bashrc or .cshrc so you don't have to type it
- all the time. Then, check out Moodle using this (all one line): Don't try to do run this first CVS command into an existing moodle directory
- - start fresh with a new directory. Note that you will be prompted for mypassword with each CVS
- command. To avoid this, follow the Sourceforge
- directions about using authorized keys. Now, you should have a new 'moodle' directory. You can rename it and move it
- around if you like. Go into it: All the latest Moodle files should be in there. You can now change files in
- your copy. To compare your files against the main CVS copy on the server use
- cvs diff, eg: CVS is the Concurrent Versioning System. It's a commonly used way of storing
+ source code because it keeps versions of all files so that nothing is ever
+ lost, and usage by different people is tracked. It also provides ways to merge
+ code if two or more people are working on the same file. All code and all
+ versions are stored on a central server (in this case, at Sourceforge).
+ To use Moodle's CVS archive (as a developer) from a Unix machine, you first
+ need to have an account on Sourceforge. For
+ the examples on this page, let's assume your username is myusername
+ and your password is mypassword.
+ Once you have an account, you need to contact me (Martin Dougiamas) to get write access to particular
+ directories. To avoid being prompted for mypassword
+ every time you run a CVS command, follow the Sourceforge
+ directions for using authorized keys. This step is optional, but it can
+ make your CVS experience a lot nicer. With that done, you should have all the permissions you need, so you just
+ need to set up your machine and download the current sources so you can start
+ working on them. Below are instructions for Unix and Windows systems. Sourceforge CVS uses ssh as a transport layer for security, so you will
+ have to set this CVS_RSH environment variable in your Unix shell: It's best to put this in your .bashrc or .cshrc so you don't have to type
+ it all the time. Then, check out Moodle using this (all one line): Don't try to do run this first CVS command into an existing moodle directory
+ - start fresh with a new directory. Note that you will be prompted for mypassword
+ for each command unless you set up authorized
+ keys Now, you should have a new 'moodle' directory. You can rename it and move
+ it around if you like. Go into it: All the latest Moodle files should be in there. You can now change files
+ in your copy. To compare your files against the main CVS copy on the server
+ use cvs diff, eg: To fetch the latest updates from the server use: To copy your new files back to the server you would do: To fetch the latest updates from the server use: To copy your new files back to the server you would do something like:
+ You will be prompted to add some comments (depends on your default text editor)
- ... add a comment and close the editor ... the files will be sent to Sourceforge
- and stored. Done! To save more time you can put default arguments into a file called .cvsrc in
- your home directory. For example, mine contains: You will be prompted to add some comments (depends on your default text
+ editor) ... add a meangingful comment and close the editor ... the files
+ will be sent to Sourceforge and stored. Done! To save more time you can put default arguments into a file called .cvsrc
+ in your home directory. For example, mine contains: Try 'cvs help' for more details ... These instructions are based on notes provided by Mitsuhiro Yoshida <mits@mitstek.com>. Firstly, download and install WinCVS. https://sourceforge.net/project/showfiles.php?group_id=10072 Secondly, download sfsetup for SourceForge ssh access, install it and reboot
+ Windows. Next, configure WinCVS. Launch it, and select Admin -> Preferences.
+ Then change them as follows: [General] [Globals] Congratulations, WinCVS is set up. Now, you should check out a complete
+ working copy of the Moodle course code: After this first checkout, you can fetch updated files from the CVS server
+ like this: After modifying files, you can commit them back to the CVS server like
+ this: Good luck! Try 'cvs help' for more details ... Version: $Id: features.html,v 1.2 2001/12/09
- 10:34:19 martin Exp $ Version: $Id: features.html,v 1.2 2001/12/09
+ 10:34:19 martin Exp $ This document describes some of Moodle's design and how you can contribute. Sections in this document: This document describes some of Moodle's design and how you can contribute. Sections in this document: From a system administrator's perspective, Moodle has been designed according
- to the following criteria: From a system administrator's perspective, Moodle has been designed according
+ to the following criteria: As mentioned above, Moodle has a number of features that are modular. Even
- if you are not a programmer there are things you can change or help with. As mentioned above, Moodle has a number of features that are modular. Even
+ if you are not a programmer there are things you can change or help with. These are by far the most important modules, and reside in the 'mod' directory.
- There are seven default modules: assignment, choice, forum, journal, quiz, resource,
- and survey. Each module is in a separate subdirectory and consists of the
- following mandatory elements (plus extra scripts unique to each module):How to use CVS
-
-
-
-setenv CVS_RSH ssh (for csh, tcsh etc)
-
- export CVS_RSH=ssh (for sh, bash etc)
-
-
-
-cvs -z3 -d:ext:myusername@cvs.moodle.sourceforge.net:/cvsroot/moodle co moodle
-
-
-
-cd moodle
-
-
-
-
-cvs diff -c config-dist.php
+
+
+
Using CVS to access and update Moodle source code
+
+
-1. Using CVS on Unix
+
+
+
+
+ setenv CVS_RSH ssh (for csh, tcsh etc)
+ export CVS_RSH=ssh (for sh, bash etc)
+
+
+ cvs -z3 -d:ext:myusername@cvs.moodle.sourceforge.net:/cvsroot/moodle co moodle
+
+
+ cd moodle
+
+
-cvs diff -c config-dist.php
cvs diff -c lang
-
-
-
-cvs update -dP
-
-
-
+ cd lang/ca
+
+
+ cvs update -dP
+
+
-cd lang/ca
cvs commit
-
-
-
+ diff -c
+
+
+ diff -c
update -dP
-
+ 2. Using CVS on Windows
+
+
+
+
+
+
+
+
+
+
+ CVSROOT data:
+ Authentication: ssh
+ Path: /cvsroot/moodle
+ Host address: cvs.moodle.sourceforge.net
+ User name: myusername
+ CVSROOT: myusername@cvs.moodle.sourceforge.net:/cvsroot/moodle
+ Checkout rad-only: uncheck
+ Supply control when adding files: check
+ Quiet mode: uncheck
+ TCP/IP compression: check and select 9
+ Dirty files support: check
+ Prune(remove) empty directories: check
+ Disable splash screen: uncheck
+
+
+
+
+
+ Developers Manual
-
-
+Developers Manual
+1. Moodle architecture
-1. Moodle architecture
+
@@ -79,15 +79,15 @@
interface formatting (so that it can be integrated visually into other web sites).2. How you can contribute
-2. How you can contribute
+
The easiest way to start a new learning activity module is to use the template + in mod/newmodule_template.zip. + Unzip it and follow the README inside.
+You might also like to post first in the Activities + modules forum on Using Moodle.
+
@@ -167,6 +191,15 @@Themes (or skins) define the look of a site. A number of simple themes are provided in the main distribution, but you may want to copy one of these and customise it to suit your own needs (eg local logo, colours, styles, graphics - etc)
-Each theme is in a subdirectory of the "theme" directory. You can - copy the "standard" theme as a template.
+
+ etc). Each theme is in a subdirectory of the "theme" directory. + You can copy the "standard" theme or any other theme as a template + for your own.Here is what each of the files does:
++
+- config.php: defines your theme colours used throughout + the site
+- styles.php: the style sheet, containing CSS definitions + for standard HTML elements as well as many Moodle elements.
+- header.html: Included at the top of each page. This is + what you need to edit to add a logo at the top of pages, for example.
+- footer.html: Included at the bottom of each page.
+Note that Moodle upgrades may break themes slightly, so check the + release notes carefully if you are using a custom theme.
+In particular, Moodle 2.0 will have a completely new display system, based + on a XSL transformations of XML output from Moodle. It is likely that the + themes for this will be a completely different format, but the advantage will + be a much higher possible degree of customisation (including moving elements + around the page).
+More discussion about this in the Themes + forum on Using Moodle.
and for modules:
helpbutton("forumtypes", "Forum types", "forum");
+Note that you can edit languages online, using the administration web tools + under "Check this language". This makes it easy to not to only create + new languages but to refine existing ones. If you are starting a new language, + please contact me, Martin Dougiamas.
+You might also like to post in the Languages + forum on Using Moodle.
+If you are maintaining a language an ongoing basis, I can give you CVS + write access to the Moodle source code so that you can directly maintain + the files.
@@ -182,12 +215,13 @@ and inside the db subdirectory of each module.Currently, only MySQL is supported because that's what I know. If you are familiar with another database (especially open source databases) and are - willing to help port the MySQL schema, please get in contact with me (martin@moodle.com).
+ willing to help port the MySQL schema, please get in contact with me (Martin + Dougiamas).
-Moodle 1.0 supports three different course formats: weekly, topics and social. +
Moodle 1.x supports three different course formats: weekly, topics and social.
These are a little more connected to the rest of the code (and hence, less "pluggable") but it is still quite easy to add new ones.
@@ -199,8 +233,8 @@If you feel like writing a tutorial, an article, an academic paper or anything - else about Moodle, please do! Put it on the web and make sure you include - links to http://moodle.com/
+ else about Moodle, please do! +Put it on the web and make sure you include links to http://moodle.com/
Participating in the bug tracker
@@ -230,8 +264,8 @@- -
Version: $Id: developer.html,v 1.2 2001/12/09 - 10:34:19 martin Exp $
+ +Version: $Id: developer.html,v 1.2 2001/12/09 + 10:34:19 martin Exp $
- +