|Version 10 (modified by thomasb, 6 years ago) (diff)|
Who has access?
Everyone has anonymous read access to the RoundCube SVN server. In order to have write access you must be a developer on the project.
The SVN server is located at https://svn.roundcube.net. This is the address that you will use to check out a working copy, do any commits, etc.
The best way to learn how to use the Subversion repository is to read the Subversion book, located here (warning: large page).
For example, to checkout anonymously use the following command:
svn checkout https://svn.roundcube.net/trunk A svn.roundcube.net/trunk A svn.roundcube.net/trunk/roundcubemail A svn.roundcube.net/trunk/roundcubemail/SQL ...
To checkout Roundcube as a developer, simply add your username to the end of the same command:
svn checkout https://svn.roundcube.net/trunk --username <your_username_here> A svn.roundcube.net/trunk A svn.roundcube.net/trunk/roundcubemail A svn.roundcube.net/trunk/roundcubemail/SQL ...
Once complete just cd into the directory trunk to find the roundcubemail directory. SVN is very, very powerful - it is suggested that you at least skim the SVN book before starting.
Branches and Tags
The ongoing development is mainly done on the trunk. We create branches for each official release where important bugs and security issues can be fixed thereafter. Tags are used to create snapshots of a certain point in time. Files are mostly tagged right after releasing. In case we need to make a patch to a previous release, we would modify the according branch and then create a new tag.
Occasionally a developer creates a development-branch to work on new features or partial code rewrites which will take more time. Creating a "devel-branch" branch is useful in case that your changes will break the trunk or to not disturb the other developers. Once the changes are done, the devel-branch will be merged back into trunk and then deleted.
Incidental SVN versions are released in gzipped tarball format on http://nightly.roundcube.net. Please be aware that these packages are unsupported and might be partially broken.