Le altre risposte forniscono un buon elenco di strumenti con cui lavorare. Il flusso di lavoro dipenderà fortemente dal tipo di progetti e dalle persone coinvolte. Se stai iniziando, suggerirei di investire in quanto segue:
1.) Automatizza l'installazione di Magento
Imposta un processo 1 comando / clic per installare Magento inclusi i dati di esempio. Strumenti menzionati per questo
n98-magerun
mage-ci
jumpstorm
o il tuo script. Alcuni suggerimenti possono essere trovati qui .
L'idea per questa parte è che sei in grado di creare una nuova istanza con impostazioni ripetibili senza troppi sforzi (nel momento in cui lo sforzo è coinvolto diventerai titubante / pigro per creare una nuova istanza)
2.) Sviluppa e testa con l'istanza impostata in 1.).
Per lo sviluppo ho incontrato due linee di pensiero:
a.) Magento Core fa parte del tuo progetto
Molte persone usano modman qui, per mantenere i loro file al di fuori della struttura delle cartelle di Magento, quindi assicurati di controllare anche questo.
b.) Il progetto include solo i file di estensione / tema
Sia Phpstorm che Netbeans consentono di eseguire la distribuzione durante il salvataggio in una posizione specifica (la cartella principale di Magento, può anche essere un'istanza online tramite FTP). Usando Magicento per Phpstorm puoi colmare gli svantaggi di questo approccio (suggerimento di classe, vedere eredità, completamento automatico ...) La mia sensazione è che se stai sviluppando per un particolare cliente andresti per 1.) con il target Versione Magento installata e se si intende supportare più versioni di Magento, si dovrebbe andare per 2.)
3.) Condividi il codice con la
distribuzione del team in un ambiente in cui il tuo codice può essere testato insieme al lavoro dei tuoi colleghi
4.) Avvia il tuo QA / processo di distribuzione
L'
uso generale di un sistema di controllo di versione distribuito (git, mercurial, ...)
include test ( unit test , integrazione )
automatizza ciò che puoi
leggere lotti - segui alcuni degli esperti qui che condividono liberamente le loro conoscenze (controlla i loro blog personali / github conti). Molto spesso questo ti farà risparmiare un sacco di tempo e imparerai più velocemente che provare a scoprire tutto da solo.
Buona programmazione!