2009-01-23 11 views
1

Exécution d'un site Web ASP.Net et utilisation de TinyMCE pour la gestion de contenu. Les utilisateurs doivent être en mesure de télécharger des images pour le contenu. Les images seront montrées dans le contenu du site Web (nouvelles, articles, etc), mais ne seront pas référencées par quelque chose en dehors de leur contenu.Meilleure pratique pour les téléchargements de sous-versions et d'images

Ces images doivent-elles être sous contrôle de version (svn), ou le répertoire de téléchargement doit-il être simplement transféré si nécessaire (sauvegarde, test, etc.)? Si elles doivent être versionnées, quelle est la meilleure façon de le faire?

Répondre

6

Le contenu ne fait pas partie de l'application juste l'instance que vous avez en cours d'exécution, il devrait donc être ajouté à votre sauvegarde, pas votre dépôt SVN. Je n'ajoute des images à SVN que s'il y a des parties de l'application.

0

Il n'y a aucune raison de ne pas stocker d'images dans votre référentiel de gestion des versions, et cela en fait un excellent outil pour gérer les changements d'esprit, qui a fait quoi et comment les choses évoluent avec le temps. La seule chose que vous devez faire est de vous assurer que vous avez la propriété needs-lock sur ces fichiers - la dernière chose que vous voulez est que les utilisateurs obtiennent un fichier, le modifient, puis tentent de le vérifier seulement pour trouver quelqu'un d'autre l'a déjà modifié. Normalement, ce n'est pas un problème en raison de la capacité de fusion de SVN, mais c'est un peu difficile de fusionner des fichiers image. Ainsi, mettez la propriété needs-lock sur et seulement 1 utilisateur peut modifier une image à la fois.

ah ... il suffit de le relire, voulez-vous dire le contenu téléchargé par l'utilisateur qui ne fait pas partie de votre site Web? Dans quel cas, pourquoi avez-vous besoin de ces images - sauvegardez-les bien sûr, mais sinon en avez-vous besoin ailleurs que sur le site web?

1

Je pense que vous voulez effectuer une sauvegarde périodique de ces images. SVN est génial, mais si vous voulez l'utiliser pour du contenu utilisateur, vous devez également implémenter SVN dans l'interface de votre application, sinon cela ne servira à rien.

Si vous avez un accès SSH, vous pouvez planifier un travail pour sauvegarder les images périodiquement.

+0

Oui, définitivement. Mais certainement pas dans le contrôle de version, à moins que la version est bien sûr le but. – jcelgin

0

Je crée généralement un contrôle de subversion diiferent pour les images. Disons que vous avez un projet composé de codes sources et des images, je crée deux subversions comme ci-dessous:

$ svnadmin create my_project

et

$ svnadmin create my_project_images

En faisant tout changement à une image, je supprimer tout cette image de contrôle subversion poing, puis ajouter l'image modifiée. Ceci est utile dans les cas où le nombre de fois que les images changeraient est considérablement inférieur à celui des codes source, qui sont sous le contrôle subversion my_project. De cette façon, je peux partager mes projets contenant des données binaires avec d'autres en utilisant SVN.

Questions connexes