web-dev-qa-db-fra.com

Développement de sites Web Joomla et Bitbucket

Je cherche des conseils sur l’utilisation de Joomla et Bitbucket à des fins de contrôle de version. Je suis très nouveau chez Git (Bitbucket) et j'espère que quelqu'un pourra m'aider à comprendre les choses un peu mieux par rapport à Joomla.

Tout d'abord, un peu de contexte. Nous développons actuellement des sites utilisant Joomla. La partie principale de ce processus est le développement de modèles. Nous créons un nouveau modèle sur mesure pour chaque site Web Joomla. Nous hébergeons actuellement tous nos sites Web "en développement" sur un serveur en ligne, ce qui signifie que nos clients peuvent en suivre l'évolution. Aucun développement n’est fait localement, bien que j’ai utilisé MAMP par le passé. J'utilise Coda 2 pour me connecter au site de développement via FTP, je télécharge un fichier, apporte des modifications, puis télécharge à nouveau ce fichier.

J'ai récemment engagé un autre développeur et nous nous sommes heurtés à des problèmes de contrôle de version à l'aide du processus ci-dessus. Par conséquent, j'ai créé un compte Bitbucket afin que nous puissions suivre les changements. Mon problème est que je ne sais pas comment inclure Bitbucket dans le flux de travail décrit ci-dessus.

J'ai jeté un coup d'oeil à une extension Joomla appelée Git 2 FTP deploy http://rd-media.org/extensions/git2ftp-deploy.html mais je ne suis pas sûr si c'est ce dont j'ai besoin .

Je n'aime pas me développer localement car mes clients ne peuvent pas voir leur site Web. Par conséquent, j'ai un site local, puis une copie de ce site sur le serveur de test? Si oui, comment synchroniser les modifications de la base de données?

Comme vous pouvez le constater, la question me laisse assez perplexe et je la regarde probablement de travers. J'ai fait beaucoup de recherches en ligne mais je n'arrive pas à comprendre. Si quelqu'un pouvait aider de quelque manière que ce soit, je l'apprécierais vraiment.

Merci

5
DesignSubway

Je vous suggérerais de ne pas travailler localement lors de votre développement. Vous pouvez ensuite transmettre vos modifications à Bitbucket à l'aide de Git, puis utiliser un crochet pour mettre à jour automatiquement le référentiel sur le serveur de développement pour que vos clients puissent l'afficher.

Il y a quelques bonnes réponses ici qui vous aideront:

https://stackoverflow.com/questions/3728054/git-Push-to-live-server

En ce qui concerne les mises à jour de base de données, je ne suis pas vraiment sûr de cela, alors j'espère que quelqu'un d'autre ici pourra vous donner de bonnes informations à ce sujet.

2
Lodder

Pourquoi utilisez-vous FTP? C'est très peu sûr, c'est mieux si vous pouviez accéder au serveur à distance, via un SSH ou un autre moyen, et à partir de là, tirez-le à chaque fois que vous apportez des modifications à votre environnement local.

Je vous recommande également d'utiliser le fichier .gitignore pour ignorer tous les fichiers de votre référentiel, à l'exception des modifications modifiées apportées par vos développeurs, afin d'éviter que la bibliothèque Joomla ne parvienne dans GIT, ce qui nécessite un espace inutile et des problèmes de mise à jour. . Donc, si vous créez un composant, vous tapez simplement!/Public/components/com_my_component, tout en laissant un simple "/" ontop de votre fichier .gitignore.

A propos de la base de données, vous pouvez créer des "correctifs". Chaque fois que vous effectuez une mise à jour dans votre base de données, vous enregistrez les informations dans un fichier. Si vous le faites depuis phpMyAdmin, vous pouvez simplement copier la ligne après exécution et la placer dans un dossier/db de votre référentiel git. Ensuite, vous extrayez le dernier code sur votre serveur de production et importez ce correctif.

Donc, vous travailleriez localement, mais chaque fois que vous apportez des modifications locales qui ne cassent pas l'application, vous pouvez simplement git Transférer le contenu dans votre référentiel et le retirer sur votre serveur, voilà l'idée.

J'espère que ça marche!

1
Purple Penguin