This manual is deprecated. Please visit https://groupoffice.readthedocs.io for the latest documentation. |
Difference between revisions of "Subversion"
(3 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
There are a couple of top level directories that are important: | There are a couple of top level directories that are important: | ||
− | + | #branches | |
− | + | #tags | |
− | + | #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. | 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. | ||
Line 14: | Line 14: | ||
To checkout the latest trunk for do: | To checkout the latest trunk for do: | ||
− | svn checkout https://anonymous@group- | + | <pre> |
− | office.svn.sourceforge.net/svnroot/group-office/ | + | svn checkout https://anonymous@group-office.svn.sourceforge.net/svnroot/group-office/trunk |
− | + | </pre> | |
+ | |||
+ | ==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 | ||
+ | <pre> | ||
+ | *.php = svn:keywords=Id | ||
+ | *.js = svn:keywords=Id | ||
+ | </pre> | ||
+ | |||
+ | 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: | ||
+ | <pre> | ||
+ | /** | ||
+ | * 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> | ||
+ | */ | ||
+ | </pre> |
Latest revision as of 07:46, 15 April 2010
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:
- branches
- tags
- 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> */