- b2evolution CMS User Manual
- Archives
- CVS / SourceForge
CVS / SourceForge
Overview
b2evolution used to be developed in a central CVS repository at SourceForge. This allows users to grab any version of b2evolution they want, including the latest development version.
The normal way of obtaining b2evolution is through the page. It is not recommended to use any CVS version unless you know what you’re doing.
The page about b2evolution CVS on sourceforge can be found here: http://sourceforge.net/projects/evocms/ . That page includes help about accessing CVS on sourceforge.
We had two projects hosted on SourceForge.Net:
- The b2evolution repository at http://sf.net/projects/evocms
- The (new) b2evolution plugins repository at http://sf.net/projects/evocms-plugins
See also: SF CVS wiki
Branches
Think of the b2evolution project as a tree, now each version/release of it is a branch of that tree. The latest development build, or the newest branch is called/titled ‘’ ‘HEAD’ ‘’. Now older branches are titled by their version number, or similiar. Now just like a real tree, branches still grow, this means that even though the developers are working on a new release, they may also be updating previous releases. This is one of the reasons why CVS is used.
Read the following section carefully, and make sure you understand who should be using CVS and why.
But which branch should I use?
- If you want the latest cutting edge stuff and don’t care about stability, then use the HEAD branch.
- The HEAD branch ‘’DOES NOT OFFER SUPPORT'’.
- Why use the CVS HEAD branch?
- If you are a developer who wants to work with the latest features or keep your work up to date.
- If you are a tester who does not care about stability and would like to post bug reports to help make the development release better.
- Think of using the HEAD branch as ‘’BETA testing'’, you are there to make the product better, to help out with it’s development. NOT to use it as a general replacement.
- If you want to use a supported release, but still with the cutting edge features, use an alternative branch than the HEAD branch.
- For v1.8-beta, the branch is ‘’v-1-8′’
- Why use previous CVS branches?
- So you can easily append features and hacks to the latest stable release.
- So you can use plugins that require certain patches to be made to the project.
- An older branch may be updated to include new features etc, but the changes may not be enough for a public release, so you can use the CVS version for acquiring the updated branch instead of waiting.
Getting started
Make sure you read and understood the previous section. And that you are sure you understand who should be using the CVS version and why.
- To grab a recent snapshot of the CVS HEAD release, you can download the ZIP package here: http://doc.b2evolution.net/b2evo_HEAD_snapshot.tgz
- Below are Download Instructions for TortoiseCVS (Easy), and WinCVS (Advanced).
Download Instructions (TortoiseCVS)
- Install TortoiseCVS
- Make a folder where you want your b2evolution folders to go
- Right click the folder and do ‘CVS Checkout’
- Enter the following information, then press the ok button.
- —Module
- CVSROOT: :pserver:anonymous@evocms.cvs.sourceforge.net:2401/cvsroot/evocms
- Protocol: Password server (:pserver:)
- Protocol parameters:
- Server: evocms.cvs.sourceforge.net
- Port: 2401
- Repository folder: /cvsroot/evocms
- User name: anonymous
- Module: b2evolution
- Alternatively, to set the branch and module names you can use update/fetch list and then pick the appropriate one you want.
- If you would like to grab the v-1-8 or any other stable release builds, In the ‘Revision’ tab, Select ‘Choose branch or tag’, then type the desired branch/tag name. (e.g. 1.8-beta -> ‘v-1-8′). ‘’Refer to previous note.'’
- If you just want to download the CVS build without any of the CVS developer files and information, go to the ‘Options’ tab and check ‘Export’ instead of ‘Checkout’
- You can just grab the /blogs/ folder instead of the /b2evolution/ folder as well, by changing the module name to ‘b2evolution/blogs’.
Download Instructions (WinCVS)
- Install WinCVS
- Make a folder where you want your b2evolution folders to go
- Run WinCVS
- Goto; Admin -> Command Line (ctrl+L)
For the latest CVS HEAD branch enter the following, then press ok.
cvs -z3 -d:pserver:anonymous@evocms.cvs.sourceforge.net:/cvsroot/evocms co -P b2evolution
For the v-1-8 CVS branch enter the following, then press ok.
cvs -z3 -d:pserver:anonymous@evocms.cvs.sourceforge.net:/cvsroot/evocms co -r v-1-8 -P b2evolution
Contributing code to CVS
If order to contribute code, you will have to "check in" your modifications using CVS. this can be done with TortoiseCVS or WinCVS. However, in order tocheck in files you will need to create an account at sourceforge, get approved and then use CVS with that account instead of the anonymous access methods described above.
For more info, refer to documentation & wiki available from SourceForge.
Problems when using CVS version
The main problem is you may run into is when the database schema changes:
We have a global variable $new_db_version
that gets checked on each request if it matches the schema in the DB. If it does not match, you have to run the upgrade script. The problem is that we do not update this variable in CVS if we change the DB schema. So you’ll have to watch the files /install/_functions_evoupgrade.php
and /inc/_misc/_db_schema.inc.php
(quite fresh in CVS).
With |version 1.8 we’ve switched to use a db_delta()
function that generates delta SQL queries to change the current DB to the one in _db_schema.inc.php
. So, when this file changes (after CVS update
), you just have to manually go to the /install/
folder with your browser, request an upgrade and your DB schema should get adjusted.
However, you’ll still have to watch the changes in /install/_functions_evoupgrade.php
!