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.10.2.13 -r1.10.2.14 --- openacs-4/packages/acs-core-docs/www/cvs-guidelines.html 19 Nov 2016 09:21:53 -0000 1.10.2.13 +++ openacs-4/packages/acs-core-docs/www/cvs-guidelines.html 6 Jan 2017 09:18:41 -0000 1.10.2.14 @@ -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. @@ -44,7 +44,7 @@ ~/.cvsrc with the contents:

cvs -z6
 cvs -q

-z6 speeds up cvs access over the network quite a bit by enabling compressed - connection by default. -q suppresses some verbose output from commands. For example, it makes the output of cvs up much easier to read.

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-9. This ensures that you are working on top of a stable OpenACS core, but still allows you to commit feature @@ -68,13 +68,13 @@ 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. @@ -89,7 +89,7 @@ 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, @@ -117,7 +117,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 @@ -133,7 +133,7 @@ calendar package. All non-core, non-dotlrn packages should have a tag of this style, based on the package name. Many packages have not been re-released since the new naming convention was adopted - and so don't have a tag of this type. + and so don't have a tag of this type.

  • openacs-x-y-compat tags point to the most recent released version of OpenACS X.Y. It is similar to openacs-x-y-z-compat, except that it will always get the most recent dot-release of Core and the @@ -231,9 +231,9 @@ be addressed with another upgrade script. E.g., the last planned upgrade script for a package previously in dev 1 would be upgrade-2.0.0d1-2.0.0b1.sql, not upgrade-2.0.0d1-2.0.0.sql. Note - that using rc1 instead of b1 would be nice, because that's the + that using rc1 instead of b1 would be nice, because that's the convention with release codes in cvs, but the package manager - doesn't support rc tags. + doesn't support rc tags.

  • Database upgrade scripts should never go to the release version, e.g., should always have a letter suffix such as d1 or @@ -312,12 +312,12 @@ OpenACS code so that patches can be generated.

  • - For example, adding a new API function wouldn't require a + For example, adding a new API function wouldn't require a TIP. Changing an existing API function by adding an optional new - flag which defaults to no-effect wouldn't require a TIP. Added a + 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: @@ -368,10 +368,10 @@ Added missing h3 HTML close tag".

  • Commit one cohesive bug fix or feature change at a time. - Don't put a bunch of unrelated changes into one commit. + Don't put a bunch of unrelated changes into one commit.

  • Before you throw out or change a piece of code that you - don't fully understand, use cvs annotate and cvs log on the file to + don't fully understand, use cvs annotate and cvs log on the file to see who wrote the code and why. Consider contacting the author.

  • @@ -397,7 +397,7 @@ OpenACS cvs web and - Jeff's cvs + Jeff's cvs browser are useful tools in understanding what is @@ -418,7 +418,7 @@

  • file locking etc. with cvs

  • - Piskorski's cvs refs + Piskorski's cvs refs

  • backup with cvs