CRE Forge
Home My Page Project Tree Code Snippets Project Openings
  
Click links for documentation of : CRE Forge Introduction | CRE Forge Principles | Tortoise SVN

The CREForge FAQ

Who can start a project on CREForge ?

CREForge has been setup to enable people to work on projects related to CRE Loaded and osCommerce 2.2 MS2. Anyone can start a project, and participation in projects is open to anyone. You can read more about the general terms of service.

Who can delete a project ?

Deleting a project is a privileged operation that can only be performed by CREForge's admins. Please sent any request to projectmanager@creloaded.com.

Where can I find the certificate authority that has signed the certificate for CREForge ?

If you are tired of your browser asking you if you trust CREForge because it could not verify its certificate, you should download the identity of the certificate authority that is available on CREForge site.

What is the default language on CREForge ?

CREForge's interface is maintained only in English, though some elements are provided in multilingual form as part of the base GForge development. Depending on your browser settings and on your personnal preferences when you are logged in you may see the web interface in English  or in your native language. To be more precise :

  • When not logged in, the language used will be the first of  English or your native language seen in your browser settings.
  • When logged in, the language used will be the one you last set in your preferences.
Nervertheless, some elements are not multilingual: this FAQ for instance, is only available in English; the news items on the front page are only available in the language the project submitting the news has written them.

Each project also defines a natural language. This is an indication of the language that should be used when submitting bugs or writting to the mailing lists of the project. It has no known influence on the language of the interface, even when browsing the project's pages.

Finally, the websites each project can setup on <project_name>.creforge.com define their own behaviour. The gforge team or software has no influence on them.

SCM (source control manager) questions

Why should I move from CVS to Subversion while migrating to CREForge ? (be aware it is not mandatory)

Even though CVS is very stable and widely used, it has some known drawbacks: It doesn't keep track of renaming files and directories or doesn't store information about a commit as a whole, and handling branches is a pain.

Subversion was written by the maintainers of CVS and is a stable alternative to CVS. Subversion is based on the idea that you don't create branches or tags but just create a copy of your sources as one would do with no other tools at hand than just the 'cp' copy command. To avoid the overhead of copy operations an efficient storing system (Berkley DB or FSFS) is used to hold all the data.

It has some drawbacks.  Extraction of particular files is likely to be slow, and dependent upon your ability to work with Unix command line utilities after extracting a full file set.

Ok, but how to change from cvs to subversion when migrating to CREForge ?

You can import your whole existing CVS repository, or just one module, into your newly created Subversion repository on the GForge. First, you have to create a local Subversion repository from your local CVS repository (SVN_REP is the path of your temporary local subversion repository, automatically created by the cvs2svn tool):

cvs2svn --fs-type fsfs -s SVN_REP /path/to/my/local/cvs/repository

or from only one module of your local CVS repository:

cvs2svn --fs-type fsfs -s SVN_REP /path/to/my/local/cvs/repository/this_module

This will create the SVN_REP directory and fill it with the history of your CVS repository/module history. When this is done, follow the instructions of How do I import my Subversion history ?.

You can find the cvs2svn tool and its documentation here. Packages exist for various Linux distributions (Debian, RedHat, Fedora, Mandrake, ...).

How do I import my CVS history ?

Importing CVS history is a simple task : supposing you have a copy of the module you want to import (ie you have a version of $CVSROOT/ModuleToMigrate) in the current working dir of your machine. Then a simple

scp -r ModuleToMigrate <login>@scm.creforge.com:/cvsroot/<project_name>
will install your project in the CVS repository of your project. Beware: pre and post commits scripts might no longer work after the importation. You should check this is you have set any up in your previous repository. Make also sure you run the following commands to fix any broken permissions:
find /cvsroot/<project_name> -not -group <project_name> -exec chgrp <project_name> '{}' \;
find /cvsroot/<project_name> -type d -not -perm -2070 -exec chmod g=rwxs '{}' \;

Once you have uploaded your module, you need to fix the module permissions to be able to browse it through the cvs web interface located on

http://creforge.com/plugins/scmsvn/viewcvs.php/?root=<project_name>

find /cvsroot/<project_name> -type d -not -perm -2005 -exec chmod o=rx '{}' \;
find /cvsroot/<project_name> -type f -not -perm -0004 -exec chmod o=r '{}' \;

How do I import my Subversion history ?

Please note that the following does not work when you use subversion 1.0.9 (packaged with Fedora Core 2 for example). You'll need to upgrade the version of subversion you are using.

Please note that Subversion repositories on the GForge use the FSFS format. If your svn Subversion repository is in BDB format, then you have to convert it to the FSFS format using the commands given below. The format of your Subversion repository can be checked by looking at the contents of the SVN_REP/db/fs-type file. To convert your Subversion repository from BDB format to FSFS, use the following commands (SVN_BDB is your local Subversion tree in BDB format, SVN_FSFS is the directory that will contain your tree in FSFS format after the execution of the commands):
svnadmin create --fs-type fsfs SVN_FSFS
svnadmin dump -q SVN_BDB | svnadmin load SVN_FSFS

Now here is how to import your Subversion repository tree in FSFS format. Let SVN_REP be your local Subversion repository tree, and project_name the unix name of your project on gforge. Make sure you did upload your ssh key in order to be able to connect to scm.creforge.com. Then,

scp -r SVN_REP/* <login>@scm.creforge.com:/svnroot/<project_name>

This copies your subversion tree in place of the one on CREForge. Don't forget the /* after SVN_REP, or else a directory will be created in /svnroot/<project_name> and you definitely don't want this.

Then connect to the forge to launch two commands, to set correct permissions on the copied svn tree:

ssh <login>@scm.creforge.com

and at the forge prompt:

find /svnroot/<project_name> -not -group <project_name> -exec chgrp <project_name> '{}' \;
find /svnroot/<project_name> -type d -not -perm -2070 -exec chmod g=rwxs '{}' \;

How do I import several repositories in one subversion repository ?

First, let's imagine we have three repositories that we want maintained under <project_name>. Let's call them calc, calendar and spreadsheet (names taken from the subverison book). The first step is to create a dump of these repositories and the directories under which these projects will be imported in your repository.
> svnadmin dump -q /path/to/calc/repos > calc-dumpfile
> svnadmin dump -q /path/to/calendar/repos > calendar-dumpfile
> svnadmin dump -q /path/to/spreadsheet/repos > spreadsheet-dumpfile
> svn mkdir -m "Imported project roots" \
svn+ssh://<login>@scm.creforge.com/svnroot/<project_name>/calc \
svn+ssh://<login>@scm.creforge.com/svnroot/<project_name>/calendar \
svn+ssh://<login>@scm.creforge.com/svnroot/<project_name>/spreadsheet
Then, copy the dump file to your home directory on CREForge and ssh to CREForge
> scp calc-dumpfile <login>@scm.creforge.com:
> scp -calendardumpfile <login>@scm.creforge.com:
> scp spreadsheet-dumpfile <login>@scm.creforge.com:
> ssh <login>@scm.creforge.com
Finally, run
$ svnadmin load /svnroot/<project_name> --parent-dir calc < calc-dumpfile
$ svnadmin load /svnroot/<project_name> --parent-dir calendar < cal-dumpfile
$ svnadmin load /svnroot/<project_name> --parent-dir spreadsheet < ss-dumpfile
You now have your three repositories under your project's repository on CREForge.

How can I use cvs/subversion on windows with ssh authentication ?

If you have followed ths configuration steps described in the ssh for windows page mentionned in How do I setup ssh (even on windows ?), you can use either a graphical or a shell-based utility to access your cvs/svn repository.

To use the graphical utility, follow the steps described in our tortoise page.

To use svn from a shell, you can follow these steps:

  • Download a binary version of subversion from there or, if it does not work, from there. If you do not have administrator privileges on your machine, ask your system administrator to do it for you.
  • Start the pageant.exe utility which comes with putty. This program installs a small icon (a computer screen with a hat) in your panel notification area located at the bottom right of your screen. Right click on this icon and select the Add key item. In the file selection dialog which pops up, select the private key file you saved during the ssh configuration as described in How do I setup ssh (even on windows ?).
  • Open a terminal, go to the directory you want to store your files in. Set the SVN_SSH environment variable with this command: set SVN_SSH=plink.exe and then run this subversion command: svn co svn+ssh://<your_username>@scm.creforge.com:/svnroot/<project_name>

How can I change the type of SCM used in my gforge project ?

This is impossible. You cannot change the type of SCM used by your gforge project from CVS to SVN or SVN to CVS. You have to delete your project and create a new project with a different unix name.

Why can I no longer download a snapshot of my SCM repository ?

Shapshot generation was disabled because it caused to big a load on the server because of the way the snapshot was made on projects with to many branches. There is no generic way of making a snapshot in a way that avoids the problems encoutered. Therefore, projects relying on snapshots should either use the tarball that is generated (and available on the admin page of each project) or make a snapshot themselves.

A snapshot is nothing more than a tarball of the checkout of the complete repository made available each night.

How do I setup ssh (even on windows ?)

To be able to:

  • import your previous cvs or svn history,
  • checkin a modification to the cvs or the svn repository,
  • modify the project homepage,
  • upload files to your private homedir
you need to setup an ssh connection between your machine and the gforge server.

On Linux:

  1. An ssh client should already be installed on your machine and should be accessible from the command line, as the "ssh" command. If not, contact your system administrator.
  2. Generate a pair of rsa public/private keys with the ssh-keygen command: ssh-keygen -t rsa (make sure you enter a lengthy passphrase when asked to).
  3. Copy your public key in an easy-to access file: cp ~/.ssh/id_rsa.pub ~.
  4. Paste your public key in the gforge website. To do this, you need to go to your account and then go to the Account maintainance tab. At the bottom of the Account maintainance tab, you should see a Shell Account Information section which contains an [Edit keys] link. Paste your public key(s) in the empty field below and click the Update button.

On Windows, consult the ssh for windows page.

A common problem is that the Shell Account Information field does not appear in your account page. This usually happens because you do not belong to any gforge project. To correct this problem, either create your own project first or request the project admin of the project you want to join to add you to the list of the project's contributors.

Please, be aware that uploading your ssh public key on the server will not allow you to connect to the server immediately through ssh. To do so, you will need to wait at most 24h. If your connection is impossible 24h later, please, contact the server administrators.

About public and private projects

What is the difference between a public and a private project ?

A private project is a project that only exists for those who know that it has been created and that can only be seen by the people that are registered as members of this project. All members of a project have access to the source control Manager (SCM) and to the webspace of the project.

A public project appears in the list of project hosted on the forge. Anybody can find it using the search function, the project tree or a search engine and can browse all public items of the project. But a public project does not necessarily mean that all items of the project are public. The visibility of each item can be controlled item by item. For example, you could have a public tracker for bugs, a private tracker for security problems, and anonymous access to the source. The visibility of each item is controlled by the admin link that is accessible to the project's admins on the page showing the item.

In all cases, only registered members of the project can change the web pages of the project or its source code.

Can a project change visibility (become public ?)

Project visibility is a project attribute chosen at the start of the life of a project and that can be changed by the gforge administrators. Please drop a mail to projectmanager@creloaded.com to request changes. You should be aware that changing the visibility of a project does not change the visibility of the different elements of the forge you are using. After having made a project public, you will need to evaluate if you want to change the visibility of any other element (eg. your cvs repository or your bug tracking tools).

About mailing lists and CREForge

I cannot access the admin interface for the mailing-lists

I created the project and/or I am an admin of a project but my normal gforge password does not allow me to access the admin web interface of the mailing-lists.

This is normal. The password used to control access to the mailing-lists admin web interface is different from your normal gforge account. This different password has been emailed to all the admins of the project at the time the mailing-list was created. The Subject of the email was CREForge New Mailing List. It contained the password used to access to the admin url: http://lists.creforge.com/mailman/admin/your-mailing-list

How can I make my mailing-lists refuse postings from non-subscribers ?

To do this, you need to be the mailing-list administrator. Go to: http://lists.creforge.com/mailman/admin/your-mailing-list. To be able to log successfully, you need your special mailing-list administration password. For information on this password, see I cannot access the admin interface for the mailing-lists.

  1. Log into the administrative interface of your list
  2. Go to privacy options
  3. Go to the sender filter
  4. Find the Should messages from non-members, which are automatically discarded, be forwarded to the list moderator? line and answer No.
  5. Find the Action to take for postings from non-members for which no explicit action is defined line and answer Discard.
  6. Save your changes

How can I make my mailing-lists automatically accept mails from some domains ?

To do this, you need to be the mailing-list administrator. Go to: http://lists.creforge.com/mailman/admin/your-mailing-list. To be able to log successfully, you need your special mailing-list administration password. For information on this password, see I cannot access the admin interface for the mailing-lists.

  1. Log into the administrative interface of your list
  2. Go to privacy options
  3. Go to the sender filter
  4. Find the List of non-member addresses whose postings should be automatically accepted line and add something like (example from the default settings)
    ^[^@]+@users\.creforge\.com
    ^[^@]+@creforge\.com
    ^[^@]+@creloaded\.com
    ^[^@]+@chainreactionworks\.com
    ^[^@]+@chainreactionweb\.com
    ^[^@]+@yoursite.com
    If you wish to extend this to allow anyone from
    yourdomain.com or any subdomain of yourdomain.com you can use this:

    ^[^@]+@(.*\.)?yourdomain\.com$
  5. Save your changes

About web hosting for projects

Can I have access to the access statistics of my project's webspace ?

No. These statistics are kept on the server, but not in a format suitable for project by project dispatch of the logs. We have no plan for the time being to change the configuration of the server to handle availability of these statistics for projects while keeping availability for administrative purposes.

Can I implement access control for my project's webspace ?

Yes. Apache honors the .htaccess files that you place in the file hierarchy of your projects (files under /home/groups/<project_name>/htdocs/). You can therefore implement access protection using .htpasswd. Please refer to the apache documentation to implement this.

Can I use php on my project's webspace ?

Yes. We have enabled php for project's webspace. Nevertheless, the primary reason php is installed on the webserver is to support the web interface of CREForge. Therefore, php.ini and the php version installed are configured to match CREForge's needs. If a security warning imposes changes on the configuration, we will act without notice to project admins. If the change is the result of a planned upgrade, project admins will receive advance notice so that they can plan for the upgrade.

Can you create a database backend for my project's webspace ?

Not yet. The database server on CREForge has for only purpose to host CREForge's data. If you need a database backend for your project's webspace, please use other resources.  Plans to implement automated support for database access are in very early stages.  This is coming.

XX does not work

When you create a new project, when you upload a new ssh key, when you create a new mailing-list, you might notice that the results of these operations are not immediate. Even after a new project has been created, browsing the cvs or subversion repository and accessing the web space are not immediate. Many operations (the above list is not exhaustive) can take up to 24hrs to complete. This happens because the server records operations and only periodically performs them.

If you are really in a hurry, you can send an email to projectmanager@creloaded.com to ask for a special server update. Otherwise, we ask you to be patient and wait for the server to complete these tasks on its own which will improve its reliability.

I can not submit new documentation in my docs area

This happens if you try to upload a large documentation file. Unfortunatly, the exact file size limit is unknown and depends on the content of the file itself. Furthermore, no error message is displayed to explain that the submission failed because the file is too big.

To workaround this problem, you can upload your documentation to your web area and then fill in the OR specify an outside URL where the file will be referenced : field in the documentation submission form to point to that uploaded file with something like: http://yourproject.creforge.com/yourfile.ps

This workaround suffers from the fact that the uploaded documentation file will be publicly accessible to all, even for private projects, because it will be served by the web server with no access control.

How can a tracker send mail to a mailing list

You might want a tracker to send mails to a mailing list, for example so that any new bug submission is announced in the developper mailing list. If you try to do this, the list manager will complain that it was not an explicit destination of the message and will reject it.

To solve this problem, you have to configure your mailing list. The option you are looking for appears under Privacy Options/Recipient filters. You should set require_explicit_destination to no.

How are the statistics of the front page computed ?

The front page presents CREForge Statistics to all the visitors. On top of that, on the default page of each project displays an Activity Percentile for the project. These statistics don't always seem right. Here is a list of reasons they might not show expected numbers.

  1. The number of hosted projects seems low: this is because only public project are counted here. Better stats are available from CREForge's admins.
  2. There seems to be no correlation between the box displaying the number of downloads and the one displaying the most active projects. This is because the first box is cumulative, whereas the second only takes into account the previous week.
  3. There seems to be no relation between the activity of a project and the percentile displayed on CREForge. This is because the percentile is computed from incomplete information. In particular, projects using a subversion repository don't have their repository activity taken into account whereas projects using a cvs repository do. This should change during the next upgrade cycle for the software behind CREForge, planned in 2006. To be a bit more precise, activity percentile is computed from
    1. Activity in the project's forums
    2. Activity on the project's task manager
    3. Activity on the project's bug, tech support and patch trackers
    4. Number of downloads
    5. Number of released files
    6. Activity in the cvs repository

How can I use cvs/subversion on windows with ssh authentification ?

If you have followed ths configuration steps described in the webpage mentioned in How do I setup ssh (even on windows ?), you can use either a graphical or a shell-based utility to access your cvs/svn repository.

To use the graphical utility, follow the steps described in our tortoise page.

To use svn from a shell, you can follow these steps:

  • Download a binary version of subversion from here or, if it does not work, from here. If you do not have administrator privileges on your machine, ask your system administrator to do it for you.
  • Start the pageant.exe utility which comes with putty. This program installs a small icon (a computer screen with a hat) in your panel notification area located at the bottom right of your screen. Right click on this icon and select the Add key item. In the file selection dialog which pops up, select the private key file you saved during the ssh configuration as described in How do I setup ssh (even on windows ?).
  • Open a terminal, go to the directory you want to store your files in. Set the SVN_SSH environment variable with this command: set SVN_SSH=plink.exe and then run this subversion command: svn co svn+ssh://<your_username>@scm.creforge.com:/svn/<your_project_name>

How can I change the type of SCM used in my gforge project ?

This is impossible. You can not change the type of SCM used by your gforge project from CVS to SVN or SVN to CVS. You have to delete your project and create a new project with a different unix name.

How can I make my mailing-lists refuse postings from non-subscribers ?

To do so, you need to be the mailing-list administrator. Go to: http://lists.creforge.com/mailman/admin/your-mailing-list. To be able to log successfully, you need your special mailing-list administration password. For information on this password, see I can not access the admin interface for the mailing-lists.

Once you are logged, goto the Privacy Options menu, then to the Sender Filters item. At the bottom of the page, in the Action to take for postings from non-members for which no explicit action is defined line, select Discard on the right. In the Should messages from non-members, which are automatically discarded, be forwarded to the list moderator? line, select No. Save your changes.

Older topics

Depending on feedback from our users, default settings for newly created projects evolve over time. This section of the FAQ holds a list of topics usefull to project admins who requested creation of their project before some of the settings evolved. You can still discover usefull information in this section, so it is kept as a reference.

How to avoid having to moderate messages generated by commits ?

By default, mailing lists request moderation for messages sent using e-mail adresses that are not subscribed to the list. At the same time, message generated by cvs or svn during commit or import operations are sent using an adress in the form <login_id>@users.creforge.com. To avoid to have to moderate these messages, it is possible to whitelist all messages sent from the users.creforge.com domain. To do this, you need to :

  1. Log into the administrative interface of your list
  2. Go to privacy options
  3. Go to the sender filter
  4. Add
    ^[^@]+@creforge\.com
    to the list of non-member addresses whose postings should be automatically accepted
  5. Save your changes
FAQ Summary
Who can start a project on CREForge ?
About certificate authority for CREForge
What is the default language on CREForge ?
SCM (source control manager) questions
About public or private projects
About mailing lists and CREForge
About web hosting for projects
How do I setup ssh (even on windows ?)
XX does not work
I can not submit new documentation in my docs area
How can a tracker send mail to a mailing list
How are the statistics of the front page computed ?
Older FAQs (not always relevant now)
 

Document Repository | CRE Forge Help | CRE Technical Documents | CRE Loaded Change Logs | CRE Loaded Wiki
Powered By GForge Collaborative Development Environment