2010-05-26 9 views
0

Je développe un gros projet, j'ai le dossier dev (connecté à un sous-domaine spécifique) puis le dossier "real", le live. Lorsque je suis prêt à envoyer des correctifs ou des versions complètes, je copie actuellement les fichiers individuellement, y a-t-il un programme qui peut m'aider à faire cette tâche? Gardez à l'esprit que certains fichiers (le fichier de configuration et le fichier htacess) et les dossiers (les fichiers dev) n'ont pas besoin d'être copiés dans la version en ligne.Déploiement de correctifs et de nouvelles versions

Merci

Répondre

3

Oui: la subversion (ou tout autre système de contrôle de version) vous permettra de pousser les changements sans douleur.

Une solution simpliste serait d'avoir une caisse où vous développez et vous vous engagez à, et une autre caisse qui est le déploiement. Lorsque vous êtes prêt, vous allez dans le répertoire de déploiement et faites un svn up pour le synchroniser. Il n'écrase pas les fichiers modifiés ou exclus.

+0

Je pensais vraiment à cela, j'espérais une solution en un clic: -P – 0plus1

+0

Vous pouvez créer un fichier .bat en utilisant le client de ligne de commande de svn. – DanC

+1

Il s'agit d'une approche en un clic: lorsque vous êtes prêt, lancez simplement une seule commande et mettez votre répertoire de déploiement à jour. Il est vrai que vous avez besoin de faire tout le travail, mais c'est un énorme avantage dans un projet plus vaste: avoir un référentiel versionné est souvent inestimable et peut vraiment payer, avec seulement un petit investissement en temps! – Palantir

0

Il existe des packages de construction comme Capistrano et Phing qui peuvent vous aider avec les déploiements plus complexes. Capistrano est basé sur Ruby, donc c'est un choix plus naturel pour les applications RoR, et Phing (basé sur PHP) peut être un peu plus pratique pour les projets PHP. Dans mon expérience, Phing semble moins mûr que Capistrano, mais il est un peu plus flexible car il ne suppose pas que vous travaillez avec un projet Ruby comme Capistrano semble le faire. C'est entièrement l'opinion bien sûr.

Les deux ont tendance à réfléchir et à travailler plus avant, mais une fois que vous avez conçu le script de déploiement, vous pouvez exécuter une seule commande et tout vous arriver pendant que vous regardez. Les deux outils peuvent s'intégrer au contrôle de source comme SVN, et apporter des copies de votre projet hors du référentiel pour vous. Vous pouvez également décomposer votre déploiement en sous-parties, par exemple un Makefile traditionnel, ce qui facilite les tests et la réutilisation. Si vous voulez que le processus que vous passez pour que vos versions soient à toute épreuve et cohérentes, vous devez utiliser un outil qui gérera toutes les étapes impliquées pour vous afin de supprimer le composant d'erreur humaine.

Questions connexes