Background
Tools
You have several processes while doing development:
– version control process and strategy
– issue management process
– general workflow
– development itself – writing code, chasing bugs, debugging etc.
– quality assurance (QA)
– deployment process
The latter seems to be quite tough because there’s a lot to be deployed between different stages and instances.
There are 4 stages (and n different Magento instances in each) in Magento development cycle
– development (local developer machine, local server)
– testing (internal testing by the QA team)
– staging or pre-live (pre-live testing by the QA team and the customer)
– live
Deployment of changes |
A note about popular alternative – Subversion
- it must be connected to central server. So you cannot version your files while working offline
- svn creates its own special control folder .svn with a lot of extra files inside every folder in Magento. Magento codebase is huge and svn creates a very big extra overhead for your filesystem. It makes it painfully slow and tedious.
- … I won’t start rant about merging in svn and git here…:)
- And yes – I have used svn, A LOT. So I know what I’m talking about:)
Magento specific issues a.k.a the Bad News
Attribute sets and attributes
How to manage attribute set and attribute migration between 4 stages described above?
Stores and Content
Configuration
Magento Deployment tools a.k.a the Good News
There’s a cure for all these issues above, though… I’ll shed some light to available tools in the upcoming posts.