Help for developers

Contents:

It is not always obvious how to use the facilities offerd by SourceForge. Some developers are intimidated by the vast amounts of documentation available and have trouble finding out how to do even simple things. This page describes how to perform some common tasks. If you are not a member of the ABC project, this page is of little interest for you.

If you are a member of the ABC project and you have a problem with the SourceForge facilities, ask Bert (bertv at users dot sourceforge dot net). He will try to find it out for you and document it on this page.

Conventions used:

Using CVS

In the following, it is assumed that you have basic knowledge of the CVS versioning control system. If you want to fresh up your memory, there are several manuals available on the web:

It is also assumed that you have CVS and ssh installed and that you know how to use it.

Uploading a new module to CVS

You've written the next ABC killer-app and you want to give it a home at the ABC Music project. A very good idea, indeed! This is what you should do. Assume that ${LOCAL} or %LOCAL% is the directory that contains the code that you want to add to the repository. The name you want to give to the module is represented by ${modulename}.

On UNIX-like systems

$ export CVS_RSH=ssh
$ cd ${LOCAL}
$ cvs -z3 -d:ext:${USER}@cvs.sourceforge.net:/cvsroot/abc import -m "My ABC killer app" ${modulename} vendor start

Check if uploading was successful and remove the old (non-CVS) version on your machine:

$ cd ..
  # Check out the CVS-enabled version of your program.
  # In this example, ${modulename} should differ from ${LOCAL}!
$ cvs -z3 -d:ext:${USER}@cvs.sourceforge.net:/cvsroot/abc checkout ${modulename}
  # Optional: If uploading was successful, the following does NOT produce any output:
$ diff -r ${LOCAL} ${modulename}
  # Remove the old version
$ rm -rf ${LOCAL}

On Windows

On Windows systems, open a command prompt/DOS box and do the following:

> set CVS_RSH=ssh
> cd %LOCAL%
> cvs -z3 -d:ext:%USER%@cvs.sourceforge.net:/cvsroot/abc import -m "My ABC killer app" %modulename% vendor start

Check if uploading was successful and remove the old (non-CVS) version on your machine:

> cd ..
  # Check out the CVS-enabled version of your program.
  # In this example, %modulename% should differ from %LOCAL%!
> cvs -z3 -d:ext:%USER%@cvs.sourceforge.net:/cvsroot/abc checkout %modulename%
  # Remove the old version
> deltree %LOCAL%

From here on, you can use CVS as you're used to it. With every action, you will be prompted for your SourceForge password.

[top]

Updating the website

If you want to update the website, there's a few basic guidelines that should be followed at all times:

  • The website is written in correct XHTML 1.0 and CSS 2.0. Please keep it that way.
  • When you update the site, make sure that all the files you have changed remain group writeable (see below).

To update the website, do the following:

  1. First, get a local copy of the CVS module 'website'.
  2. Edit the files you want to change and commit the changes. Please provide a clear and to-the-point change comment.
  3. Login to the ABC Music project shell:
    $ ssh ${USER}@abc.sourceforge.net
    $ cd /home/groups/a/ab/abc/htdocs
  4. This directory also contains a local copy of the website CVS module. To apply your changes and set permissions:
    $ ./update-site.sh

[top]