Index: openacs-4/packages/acs-core-docs/www/cvs-guidelines.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/cvs-guidelines.html,v diff -u -r1.5.2.1 -r1.5.2.2 --- openacs-4/packages/acs-core-docs/www/cvs-guidelines.html 10 Jun 2009 22:24:07 -0000 1.5.2.1 +++ openacs-4/packages/acs-core-docs/www/cvs-guidelines.html 6 Jul 2009 11:14:26 -0000 1.5.2.2 @@ -6,7 +6,7 @@

OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -

Using CVS with OpenACS

Getting Started

+

Using CVS with OpenACS

Getting Started

All OpenACS code is available anonymously. To get code anonymously, use the parameter -d:pserver:anonymous@cvs.openacs.org:/cvsroot immediately after cvs in a cvs command to check out or export code. @@ -51,43 +51,43 @@ cd CVSROOT emacs avail

Add an avail line of the form:

avail|username|openacs-4
cvs commit -m "added commit on X for username" avail

Checkout for Package Development

If you are actively developing a non-core package, you + User yournamehere

into your ~/.ssh/config file, then you can use -d :ext:cvs-server:/cvsroot instead of -d :ext:cvs.openacs.org:/cvsroot. You can then change the definition of cvs-server by changing one file instead of editing hundreds of CVSROOT/Repository files.

Checkout for Package Development

If you are actively developing a non-core package, you should work from the latest core release branch. Currently this - is oacs-5-4. This ensures that you are working on top + is oacs-5-5. This ensures that you are working on top of a stable OpenACS core, but still allows you to commit feature - changes to non-core packages. To check out all packages,

cvs -d :ext:cvs.openacs.org:/cvsroot co -r oacs-5-4 openacs-4

If you work in the directories created with this command, all of your - cvs updates and commits will be confined to the oacs-5-4 + changes to non-core packages. To check out all packages,

cvs -d :ext:cvs.openacs.org:/cvsroot co -r oacs-5-5 openacs-4

If you work in the directories created with this command, all of your + cvs updates and commits will be confined to the oacs-5-5 branch. Your work will be merged back to HEAD for you with each release.

Because the entire openacs-4 directory is large, you may want to use only acs-core plus some specific modules. To do - this, check out core first:

cvs -d:ext:cvs.openacs.org:/cvsroot -r oacs-5-4 checkout acs-core

Then add modules as needed:

cd /var/lib/aolserver/service0/packages
+      this, check out core first:

cvs -d:ext:cvs.openacs.org:/cvsroot -r oacs-5-5 checkout acs-core

Then add modules as needed:

cd /var/lib/aolserver/service0/packages
 cvs up -d packagename

... where packagename is the name of the package you want. Visit the Package Inventory and Package maintainers and status for a list of available packages and their current state. -

Checkout for Core Development

If you are actively developing packages in the OpenACS +

Checkout for Core Development

If you are actively developing packages in the OpenACS Core, work from the HEAD branch. HEAD is used for active development of the next version of core OpenACS. It may be very buggy; it may not even install correctly. Do not use this branch for development of non-core features unless your work depends on some of the HEAD core work. To check out HEAD, omit the - -r tag.

To check out HEAD for development, which requires an OpenACS developer account:

cvs -d:ext:cvs.openacs.org:/cvsroot checkout acs-core

To check out HEAD anonymously:

cvs -d:pserver:anonymous@cvs.openacs.org:/cvsroot checkout acs-core

Checkout .LRN

+ -r tag.

To check out HEAD for development, which requires an OpenACS developer account:

cvs -d:ext:cvs.openacs.org:/cvsroot checkout acs-core

To check out HEAD anonymously:

cvs -d:pserver:anonymous@cvs.openacs.org:/cvsroot checkout acs-core

Checkout .LRN

.LRN consists of a given version openacs core, plus a set of packages. These are collectively packages together to form a distrubution of .LRN. F .LRN 2.0.0 sits on top of OpenACS 5.0.0. .LRN also uses an OpenACS install.xml file during installation; this file is distributed within the dotlrn package and must be moved. To get a development checkout of .LRN in the subdirectory dotlrn: -

cvs -d :pserver:anonymous@cvs.openacs.org:/cvsroot checkout -r oacs-5-4 acs-core
+      

cvs -d :pserver:anonymous@cvs.openacs.org:/cvsroot checkout -r oacs-5-5 acs-core
 mv openacs-4 dotlrn
 cd dotlrn/packages
-cvs -d :pserver:anonymous@cvs.openacs.org:/cvsroot checkout -r oacs-5-4 dotlrn-all
+cvs -d :pserver:anonymous@cvs.openacs.org:/cvsroot checkout -r oacs-5-5 dotlrn-all
 mv dotlrn/install.xml ..

Working with CVS

Once you have a checkout you can use some commands to track what has changed since you checked out your copy. cvs -n update does not change any files, but reports which changes have been updated or locally modified, or are not present in CVS. -

To update your files, use cvs update. This will merge changes from the repository with your local files. It has no effect on the cvs.openacs.org repository.

OpenACS CVS Concepts

Modules

+

To update your files, use cvs update. This will merge changes from the repository with your local files. It has no effect on the cvs.openacs.org repository.

OpenACS CVS Concepts

Modules

All OpenACS code resides within a single CVS module, openacs-4. (The openacs-4 directory contains code for all versions of OpenACS 4 and later, and .LRN 1 and later.) Checking out this module retrieves all openacs code of any type. For convenience, subsets of openacs-4 are repackaged as smaller modules.

acs-core contains only critical common packages. It does not have any user applications, such as forums, @@ -115,7 +115,7 @@ project-manager-all contains the packages required, in combination with acs-core, to run the project-manager package.

Each OpenACS package (i.e., directory in openacs-4/packages/) is also aliased as a module of the same name. -

+

Tags and Branches

Tags and Branches look similar in commands, but behave differently. A tag is a fixed point on a branch. Check out @@ -315,7 +315,7 @@ flag which defaults to no-effect wouldn't require a TIP. Added a new mandatory flag to an existing function would require a TIP. -

+

Informal Guidelines

Informal guidelines which may be obsolete in places and should be reviewed: