Question

Je pense mettre à jour mes pratiques et chercher de l’aide et des conseils!

Je travaille beaucoup sur des sites qui exécutent joomla, oscommerce, drupal, etc.. J'ai donc créé de nombreux composants / plugins et hacks personnalisés. Actuellement, chaque site a son propre dossier sur ma configuration xampp. Ce que je voudrais faire, c’est d’avoir une configuration par défaut (par exemple) une configuration Joomla et lorsque je mets à jour les modifications, je peux faire quelque chose qui met à jour tous les autres dossiers contenant joomla, presque comme une mise à jour automatique?

Je cherche également à utiliser Aptana IDE more et le service SVN, tel que unfuddle pour partager mon travail avec d'autres, mais Je n'ai jamais utilisé SVN auparavant et je ne suis pas sûr qu'il soit possible de faire ce qui précède avec SVN?

Il serait bon de pouvoir travailler sur un élément principal / principal et d'envoyer les mises à jour des mises à jour locales et des serveurs réels, sans avoir à gérer de nombreux sites différents.

Des suggestions?

Était-ce utile?

La solution

Oui, SVN serait un excellent outil pour cela. Stockez votre code (par exemple, un composant Joomla personnalisé) dans le contrôle de source. Où que vous souhaitiez utiliser ce composant, effectuez simplement une extraction ou un exportation de ce dossier dans votre site actif. Voici une façon de structurer votre référentiel:

unfuddle.com/myRepo/trunk/com_myComponent
unfuddle.com/myRepo/trunk/com_anotherComponent

Connectez-vous à votre serveur live via SSH et exécutez la commande suivante:

> cd path/to/joomla/components
> svn co http://unfuddle.com/myRepo/trunk/com_myComponent

Chaque fois que vous modifiez votre code, validez les modifications, puis reconnectez-vous au serveur et exécutez:

> cd path/to/joomla/components
> svn up com_myComponent

L’un des avantages réels de cette fonctionnalité est que, si vous effectuez une mise à jour et que vous cassez quelque chose, vous pouvez toujours revenir au dernier "bon" connu. version.

En ce qui concerne l’automatisation de ce processus, vous risquez d’être malchanceux s’il s’agit de serveurs différents. Pour plusieurs déploiements sur le même serveur, vous pouvez très facilement écrire un script shell pour exécuter les commandes ci-dessus pour chaque site / composant. Si vous aviez besoin que ce logiciel soit entièrement automatisé, vous pouvez même configurer un travail cron pour exécuter ce script tous les jours à 2 heures du matin - par exemple, je resterais fidèle à l'approche manuelle, mais cela reste une option.

Pour travailler localement avec vos référentiels SVN, je vous conseillerais de regarder TortoiseSVN (si vous êtes sous Windows): c’est le moyen le plus simple et le plus simple de travailler avec SVN.

Autres conseils

Pour automatiser des choses, vous pouvez utiliser des hooks SVN pour cela. Il existe un hook post-commit. Ainsi, chaque fois que vous effectuez un commit, votre script de hook pourrait indiquer aux autres machines d'effectuer une mise à jour SVN pour obtenir le dernier code.

Pour plus d'informations, voir Contrôle de version avec Subversion - Implémentation des crochets de référentiel .

Je n'ai pas de bonne réponse à votre situation, mais je ne pense pas que Subversion soit la solution en elle-même.

Cette question répond à certaines des préoccupations concernant les mécanismes de partage de Subversion entre les "projets".

Subversion peut certainement gérer la partie gestion de code source de ce casse-tête. La distribution automatisée, eh bien, je voudrais utiliser un autre outil.

Recherchez Capistrano . Je l'ai utilisé plusieurs fois et une fois que vous avez compris, c'est très bien. Destiné aux rails mais devrait fonctionner pour tout ce qui nécessite d’obtenir du code d’un référentiel et de le déployer sur différents serveurs.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top