Setting up your workstation for Joomla development: Difference between revisions

From Joomla! Documentation

Wilsonge (talk | contribs)
I deleted all these pages
N6REJ (talk | contribs)
m added Bearsampp dev server
 
(28 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{merge|Setting up your workstation for Joomla! development|date=15 Sep 2013}}
<noinclude><languages /></noinclude>
This is a trial to better structure all the wiki pages around developing on and with joomla.
<translate><!--T:1--> This page is centered around developing on and with Joomla. If you find yourself stuck following any of these tutorials, please visit [[jforum:810|our Installation forums]] for more information.</translate>
Such as:
* [[Setting up your workstation for Joomla! development]].  A complete step-by-step guide to installing the Eclipse IDE on your local workstation for Joomla! development.


== Installing a web server ==
<translate>== Installing a Web Server == <!--T:2--></translate>
Installing a typical web server environment is very easy with following [[wikipedia:List_of_AMP_packages|AMP-packages]] (Apache, MySQL, PHP).
<translate><!--T:3--> Installing a typical web server environment is easy with [[wikipedia:List_of_AMP_packages|AMP packages]] (Apache, MySQL, PHP).</translate>
* '''[http://www.apachefriends.org/en/xampp.html XAMPP] (Mutliple OS)'''
* <translate><!--T:4--> [https://www.apachefriends.org/ XAMPP] at Apache Friends (Multiple operating systems)</translate>
** [[Configuring a XAMPP server for joomla development]]
** <translate><!--T:5--> [[XAMPP]] (for Joomla 1.5 and 2.5 please view [[J2.5:XAMPP|XAMPP for Joomla 2.5]])</translate>
** [[Xampp]]
* <translate><!--T:44--> [https://bearsampp.com/ Bearsampp] Full stack portable dev server (Windows)</translate>
* '''[[wikipedia:LAMP (software bundle)|LAMP]]''' (Linux)
* <translate><!--T:6--> [[wikipedia:LAMP (software bundle)|LAMP]] (Linux)</translate>
**[[Configuring a LAMPP server for PHP development]]
**<translate><!--T:7--> [[Configuring a LAMPP server for PHP development]]</translate>
* '''[[wikipedia:WAMP|WAMP]] (Windows)''',.  A good choice for for a local server environment for windows is [http://www.wampserver.com/en/ WampServer].  
* <translate><!--T:8--> [[wikipedia:WAMP|WAMP]] (Windows) A good choice for a local server environment for Windows is [https://www.wampserver.com/en/ WampServer].</translate>
* '''[[wikipedia: MAMP|MAMP]] (Macintosh / OS X)''' [http://www.mamp.info/en/download.html MAMP by living-e AG] may be a good choice.
* <translate><!--T:9--> [[wikipedia: MAMP|MAMP]] (Macintosh / OS X) [https://www.mamp.info/en/windows/ MAMP] may be a good choice.</translate>
If you want use XDebug for debuggin, you'll need to tune php settings
* <translate><!--T:41--> [https://bitnami.com/stack/joomla Bitnami] also offers a Joomla stack that you can install locally or on a remote server.</translate>
* [[Edit PHP.INI File for XDebug]]
<translate><!--T:10--> If you want use XDebug for debugging, you'll need to tune the PHP settings</translate>
* <translate><!--T:11--> [[Edit PHP.INI File for XDebug]]</translate>


== Installing an IDE / Editor (and debugging)==
<translate>== Installing an IDE/Editor (and Debugging)== <!--T:12--></translate>
*[[wikipedia:Eclipse (software)|Eclipse IDE]]
* <translate><!--T:42--> [[wikipedia:Visual_Studio_Code|Visual Studio Code]]</translate>
** [[Configuring Eclipse for joomla development]]
** <translate> <!--T:43--> [[Visual_Studio_Code|Configuring Visual Studio Code for Joomla development]]</translate>
** [[How to configure Eclipse IDE for PHP development]]
*<translate><!--T:25--> PhpStorm IDE</translate>
** [[Configuring Eclipse IDE for PHP development]]
**<translate><!--T:26--> [https://www.jetbrains.com/help/phpstorm/joomla-specific-coding-assistance.html Joomla! Development with PhpStorm] </translate>
** [http://community.joomla.org/blogs/community/828-webinar-using-eclipse-for-joomla-development.html Using Eclipse for Joomla! Development] Video webinar demonstrating overview of Eclipse features for Joomla! development
* <translate><!--T:13--> [[wikipedia:Eclipse (software)|Eclipse IDE]]</translate>
* [[wikipedia:ActiveState_Komodo|Komodo Edit]]
** <translate><!--T:14--> [[Configuring Eclipse for joomla development]]</translate>
** [[Configuring Komodo Edit for Joomla Code Completion]]
** <translate><!--T:15--> [[How to configure Eclipse IDE for PHP development]]</translate>
* [[wikipedia:NetBeans|NetBeans]]
** <translate><!--T:16--> [[Configuring Eclipse IDE for PHP development]]</translate>
** [[NetBeans overview]]
** <translate><!--T:17--> [https://community.joomla.org/blogs/community/webinar-using-eclipse-for-joomla-development.html Using Eclipse for Joomla! Development] Video webinar demonstrating overview of Eclipse features for Joomla! development</translate>
* UltraEdit, Notepad++, ...
* <translate><!--T:18--> [[wikipedia:ActiveState_Komodo|Komodo Edit]]</translate>
*Sublime Text 2 Editor
** <translate><!--T:19--> [[Configuring Komodo Edit for Joomla Code Completion]]</translate>
**[https://tutsplus.com/course/improve-workflow-in-sublime-text-2 Perfect Workflow in Sublime Text 2 tutorial]
* <translate><!--T:20--> [[wikipedia:NetBeans|NetBeans]]</translate>
*PhpStorm IDE
* <translate><!--T:22--> UltraEdit, Notepad++...</translate>
**[https://confluence.jetbrains.com/display/PhpStorm/Joomla%21+Development+using+PhpStorm Joomla! Development with PhpStorm]
*<translate><!--T:23--> Sublime Text 2 Editor</translate>
**<translate><!--T:24--> [https://code.tutsplus.com/courses/perfect-workflow-in-sublime-text-2 Perfect Workflow in Sublime Text 2 tutorial]</translate>


=== Debugging specifics ===
<translate>=== Debugging Specifics === <!--T:27--></translate>
* [[Running Automated Tests for the Joomla CMS]]
* <translate><!--T:28--> [[Running Automated Tests for the Joomla CMS]]</translate>
* [[How to debug your code]] ([[Do not use die to debug]]!)
* <translate><!--T:29--> [[How to debug your code]]</translate>


== Installing a version control ==
<translate>== Using Git == <!--T:30--></translate>
SVN ([[wikipedia:Apache Subversion|Subversion]]) will allow you to keep your Joomla! code up to date with the latest changes, to test patches and to participate in bug squashing.
<translate><!--T:31--> The CMS project uses the Git version control system and the CMS repository is stored on [https://github.com/joomla/joomla-cms GitHub]. Bugs are fixed in the master branch of this repository, and normally there are bug fixes and changes in the master branch that are more recent than the latest released Joomla version. For this reason, when we test and code bug fixes, we normally use the latest code from the master branch on GitHub, not the latest released version. Therefore, Bug Squad testers and coders need to understand how to use Git and the GitHub repository.</translate>


Details on how to work with the JoomlaCode repository are located on the [http://developer.joomla.org/code.html Joomla! Developers] site.
* <translate><!--T:32--> For testing and tracking changes, please refer to [[Git for Testers and Trackers]].</translate>
* <translate><!--T:33--> For creating your first code change (called a Pull Request), see [[Working with git and github/My first pull request]]</translate>
* <translate><!--T:34--> For working with Git, please see [[Git for Coders]].</translate>


* [[Working with git and github/My first pull request]] - The way of the current Joomla! code base.
<translate>== Related == <!--T:35--></translate>
* [[Installing Subverson on Eclipse for Joomla! development]] - The old way of the Joomla! code base.
* <translate><!--T:36--> [[Setting up your workstation for PHP development]]</translate>
* [[Tortoise SVN|Installing and using Tortoise SVN]]
* <translate><!--T:37--> [[Joomla Issue shortcut]]</translate>
* [http://developer.joomla.org/gsoc2008/16-overall-project/99-joomlacode-svn-with-easyeclipse.html Video tutorial (Nur Aini Rakhmawati)] on using JoomlaCode SVN with [http://www.easyeclipse.org/site/distributions/php.html EasyEclipse] (Linux, OS X and Windows).
* <translate><!--T:38--> [[Browser Shortcut Issue Tracker]]</translate>
* [[J4.x:Setting_Up_Your_Local_Environment|<translate><!--T:39--> Setting up your local environment for Joomla 4]]</translate>
<translate><!--T:40--> Help is appreciated finding related pages and making these pages less redundant.</translate>


== Related ==
<noinclude>
* [[Installing Joomla locally]]
<translate>
* [[Setting up a testing environment]]
<!--T:44-->
* [[Setting up your workstation for PHP development]]
[[Category:Development{{#translation:}}]]
* [[Joomla Issue shortcut]]
[[Category:Tutorials{{#translation:}}]]
Help is appreciated finding related pages and making these pages less redundant.
[[Category:Beginner_Development{{#translation:}}]]
 
[[Category:Server configurations{{#translation:}}]]
 
[[Category:Server setup local{{#translation:}}]]
[[Category:Development]]
[[Category:Server configurations{{#translation:}}]]
[[Category:Tutorials]]
[[Category:Bug Squad{{#translation:}}]]
[[Category:IDE (Integrated development environment){{#translation:}}]]
</translate>
</noinclude>

Latest revision as of 14:02, 7 July 2023

This page is centered around developing on and with Joomla. If you find yourself stuck following any of these tutorials, please visit our Installation forums for more information.

Installing a Web Server

Installing a typical web server environment is easy with AMP packages (Apache, MySQL, PHP).

If you want use XDebug for debugging, you'll need to tune the PHP settings

Installing an IDE/Editor (and Debugging)

Debugging Specifics

Using Git

The CMS project uses the Git version control system and the CMS repository is stored on GitHub. Bugs are fixed in the master branch of this repository, and normally there are bug fixes and changes in the master branch that are more recent than the latest released Joomla version. For this reason, when we test and code bug fixes, we normally use the latest code from the master branch on GitHub, not the latest released version. Therefore, Bug Squad testers and coders need to understand how to use Git and the GitHub repository.

Related

Help is appreciated finding related pages and making these pages less redundant.