Setting up a Development Environment » History » Version 19
Max Milbers, 04/24/2011 01:11 PM
| 1 | 1 | Rick Glunt | h1. Setting up a Development Environment |
|---|---|---|---|
| 2 | |||
| 3 | h2. Introduction |
||
| 4 | |||
| 5 | If you start developing for the project or just with VirtueMart you may have already set up a development environment with an IDE and a SVN program. |
||
| 6 | |||
| 7 | If you haven't done so or if you want to know what to do better, you can follow the instructions given on this page. |
||
| 8 | |||
| 9 | The following programs are recommended for working with VirtueMart and synchronizing the working directory with the local SVN repository: |
||
| 10 | |||
| 11 | 16 | Max Milbers | * SmartSVN or TortoiseSVN http://tortoisesvn.net/downloads.html |
| 12 | * Eclipse for php or aptana (very good PHP IDE and free!) |
||
| 13 | 1 | Rick Glunt | |
| 14 | 12 | Max Milbers | Of course there are other programs that can do the same as the ones mentioned above, but remember: these are just recommendations. You need in everycase jdump installed. |
| 15 | 1 | Rick Glunt | |
| 16 | h2. Setup an IDE and SVN |
||
| 17 | |||
| 18 | If you want to join the project it is important that you have a similar environment like the other devs, so it makes it easier for everyone to help each other. |
||
| 19 | |||
| 20 | First setup up an IDE, I suggest you follow the explanations here: http://docs.joomla.org/Setting_up_your_workstation_for_Joomla!_development |
||
| 21 | |||
| 22 | 15 | Oscar van Eijk | For development and testing we use JDump (http://extensions.joomla.org/extensions/miscellaneous/development/1509). In official releases (beta, RC and, of course, final), all dump() calls are removed or outcommented, but for SVN checkouts of development releases this extension is required. |
| 23 | 1 | Rick Glunt | |
| 24 | 6 | Max Milbers | h3. SVN-Basics: |
| 25 | 1 | Rick Glunt | |
| 26 | 6 | Max Milbers | For pure installation information look at the chapter "Installation of virtuemart into your IDE". The SVN folder structure is setup with 3 root folders; trunk, tags and branches. The trunk folder is used for curent active development. The tags folder is used for public releases. The branches folder can be used for code branches. |
| 27 | |||
| 28 | 1 | Rick Glunt | The structure found under these root folders mimic the structure in a typical Joomla installation, however, only contain the VirtueMart code. This gives us the ability to easily commit and checkout directly from a Joomla installation as described above. |
| 29 | |||
| 30 | There are 3 different folders for backend, frontend and modules |
||
| 31 | |||
| 32 | 17 | Max Milbers | * trunk/virtuemart/administrator/components/com_virtuemart ;pure vm |
| 33 | * trunk/virtuemart/administrator/language ;mixed |
||
| 34 | * trunk/virtuemart/components/com_virtuemart ; ;pure vm |
||
| 35 | * trunk/virtuemart/language ;mixed |
||
| 36 | * trunk/virtuemart/plugins ;mixed |
||
| 37 | * trunk/virtuemart/plugins/vmpayment ;pure vm |
||
| 38 | * trunk/virtuemart/modules/ ;mixed |
||
| 39 | 1 | Rick Glunt | |
| 40 | The /trunk is your joomla base root = jRoot. |
||
| 41 | |||
| 42 | 6 | Max Milbers | At best is if you have a joomla installation and make 1 checkout for back and frontend. Use for checkout on the joomla base root: |
| 43 | 1 | Rick Glunt | |
| 44 | 2 | Rick Glunt | svn co https://dev.virtuemart.net/svn/virtuemart/trunk/virtuemart |
| 45 | 1 | Rick Glunt | |
| 46 | After updating you should have the newest version of VirtueMart |
||
| 47 | |||
| 48 | If you want to check the mails you may want to use hamster as mailserver |
||
| 49 | |||
| 50 | 6 | Max Milbers | h2. Installation of virtuemart into your IDE |
| 51 | 1 | Rick Glunt | |
| 52 | 9 | Max Milbers | Now there are two ways. Be aware that the joomla installation should work. |
| 53 | 6 | Max Milbers | |
| 54 | h3. Use the virtuemart installer to set the right entries for using virtuemart. |
||
| 55 | |||
| 56 | This step just needs that you manually delete the virtuemart files after the installation to be able to perform the checkout (most svn clients dont overwrite existing files). |
||
| 57 | 1 | Rick Glunt | # This means download or create the installer of virtuemart and install it in joomla [[Create virtuemart installer]]. |
| 58 | 10 | Max Milbers | # Download also the all-in-one payment plugin installer at http://dev.virtuemart.net/redmine/issues/73 |
| 59 | 6 | Max Milbers | # Before you can checkout the svn you should delete the files that are installed by the vm installer. Just delete this directories |
| 60 | * administrator/components/com_virtuemart |
||
| 61 | * components/com_virtuemart |
||
| 62 | 11 | Max Milbers | * plugins/vmpayment |
| 63 | 6 | Max Milbers | and to prevent warnings the language files named en-GB.com_virtuemart.ini in |
| 64 | * administrator\language |
||
| 65 | * language |
||
| 66 | |||
| 67 | 5 | Max Milbers | # AFTER that configure the SVN, directly into your joomla base directory. |
| 68 | |||
| 69 | 6 | Max Milbers | h3. Use the right sql to inform joomla that virtuemart exists. |
| 70 | |||
| 71 | # Just make a checkout directly into your joomla base directory. |
||
| 72 | 1 | Rick Glunt | # Then execute the following sql commands with phpmyadmin. Be aware that these sql assume that you use the prefix jos for your tables. |
| 73 | |||
| 74 | 5 | Max Milbers | * This is for virtuemart: |
| 75 | 19 | Max Milbers | with joomla 1.5 |
| 76 | 1 | Rick Glunt | INSERT INTO `jos_components` (`id`, `name`, `link`, `menuid`, `parent`, `admin_menu_link`, `admin_menu_alt`, `option`, `ordering`, `admin_menu_img`, `iscore`, `params`, `enabled`) VALUES |
| 77 | (NULL, 'VirtueMart', 'option=com_virtuemart', 0, 0, 'option=com_virtuemart', 'VirtueMart', 'com_virtuemart', 0, '../components/com_virtuemart/shop_image/ps_image/menu_icon.png', 0, '', 1); |
||
| 78 | 19 | Max Milbers | |
| 79 | with joomla 1.6 |
||
| 80 | INSERT INTO `jos_extensions` (`extension_id`, `name`, `type`, `element`, `folder`, `client_id`, `enabled`, `access`, `protected`, `manifest_cache`, `params`, `custom_data`, `system_data`, `checked_out`, `checked_out_time`, `ordering`, `state`) VALUES |
||
| 81 | (NULL, 'virtuemart', 'component', 'com_virtuemart', '', 0, 1, 0, 0, '{"legacy":true,"name":"VirtueMart","type":"component","creationDate":"May 2011","author":"The VirtueMart Development Team","copyright":"\\tCopyright (C) 2011 iStraxx. All rights reserved.","authorEmail":"soeren|at|virtuemart.net","authorUrl":"http:\\/\\/www.virtuemart.net","version":"2.0.0","description":"Online-Shop \\/ Complete E-Commerce system for Joomla 1.6","group":""}', '{}', '', '', 0, '0000-00-00 00:00:00', 0, 0); |
||
| 82 | 1 | Rick Glunt | |
| 83 | 7 | Max Milbers | For information on adding the plugins, please refer to [[Plugin system]]. |
| 84 | 17 | Max Milbers | |
| 85 | 18 | Max Milbers | For information on adding the modules, please refer to [[Modules system]]. |