This manual is deprecated. Please visit https://groupoffice.readthedocs.io for the latest documentation.

Subversion

From Group-Office Groupware and CRM Documentation
Jump to: navigation, search

To start developing you'll need the source. Intermesh uses the subversion service from Sourceforge. There are a couple of top level directories that are important:

  1. branches
  2. tags
  3. trunk

The most important branches are the release branches. For example the code from the 2.16 release is stored in branches/groupoffice-com-2.16. When we release a version then we copy the source from branches/groupoffice-com-2.16 to tags/groupoffice-com-2.16-1 for example. When a bug is discovered in 2.16 then we fix it in the trunk then we merge this bugfix into the groupoffice-com-2.16 branch and after that we copy the branch to a new tag.

This way we can develop new features inside the trunk and only put bugfixes in the stable release branch and we don't get new untested features into the stable release branches.

Click here to browse the Group-Office subversion repository

To checkout the latest trunk for do:

svn checkout https://anonymous@group-office.svn.sourceforge.net/svnroot/group-office/trunk

Committing

If you have write permissions to the repository you should add some auto properties to your subversion config file(~/.subversion/config on Linux).

In the section [auto-props] add

*.php = svn:keywords=Id
*.js = svn:keywords=Id

This will set the Id property on all javascript and php scripts. This will make sure the headers of the files will contain some useful info. The @version $Id part is modified by subversion automatically:

/**
 * Copyright Intermesh
 * 
 * This file is part of Group-Office. You should have received a copy of the
 * Group-Office license along with Group-Office. See the file /LICENSE.TXT
 * 
 * If you have questions write an e-mail to info@intermesh.nl
 * 
 * @version $Id: UploadDialog.js 4569 2010-04-13 08:27:54Z mschering $
 * @copyright Copyright Intermesh
 * @author Merijn Schering <mschering@intermesh.nl>
 */