Question

Nous allons avoir une discussion animée à ce sujet à mon lieu de travail. Nous parlons des images mises en ligne par l'utilisateur pour un groupe de produits, pas des images nécessaires pour afficher le site de base. Je dis « rien », mais je suis curieux de savoir ce que les autres pensent.

Mise à jour: Juste pour clarifier. Ceux-ci sont fournis par le client des images pour les produits qu'ils entrent / modification.

Était-ce utile?

La solution

Je suis d'accord avec aucun moyen '.

Tout ce qui peut changer sur le site par l'utilisation au jour le jour, ou est modifiable par celui qui administre le site que je considère être le « contenu ». Cela inclut les fichiers téléchargés et le contenu de base de données, qui sont tous deux sauvegardés séparément. Rien sur le site Web qui est des changements de contrôle de version une fois qu'il a été déployé. Plus facile de cette façon.

Autres conseils

D'autres façons de demander si quelque chose doit être dans le contrôle de version:

  • Est-ce que les images changent?
  • Les changements liés à quoi que ce soit d'autre?
  • des erreurs peuvent-ils être faits?
  • Est-ce la traçabilité voulait / elle nécessaire?

Si le reste du site est une version contrôlée, contrôle de version les images.

Si les images sont générées, contrôle de version du générateur.

On peut supposer que ce que vous parlez est le contenu qui serait classé comme données utilisateur, par opposition aux fichiers de projets. Ce genre de choses, bien qu'importante, n'a pas besoin de versioning -. Qui a besoin d'un mécanisme de sauvegarde ancienne plaine

J'ai récemment ajouté un nouveau projet dans un dépôt SVN frais, et chaque fois que je regarde le dossier « upload » Je me rends compte que je devais inclure stupide que dans la première commettras.

Il semble que ce que vous parlez est le contenu qui est (ou sera peut-être) dans une base de données. Si un client vous fournit une liste de produits ainsi que les images de ces produits, cela devrait tous provenir d'une base de données. Dans ce cas, je ne serais pas parce que votre base de données doit être sauvegardé, mais pas dans le VCS.

Si ce n'est pas, et votre site web est statique, alors je seulement parce qu'elle est « une partie du site. »

Si vous sentez que vous devez réviser, le mettre ces ressources hors de la trajectoire du référentiel principal en quelque sorte, puis lui donner un référentiel dédié juste pour ce contenu.

Vous ne voulez pas tout le monde qui doit vérifier le code obtenir une copie de chaque image lors de leur mise à jour Checkout ou, sa lenteur, et inutile, et de les avoir dans votre arbre primaire juste avoir plus de maux de tête que vous pouvez imaginer.

/common_ancestor
   /project_code/      # repository a
   /resources_dir/     # repository b

Si vous devez utiliser des liens symboliques ou de la magie serveur web pour y arriver, puis le faire, mais quoi que vous fassiez, ne pas mettez le contenu comme dans votre référentiel principal.

En ce qui concerne les sauvegardes contre revisioning vont, Revisioning comme cela ne vous donne légère facilité si vous utilisez SVN comme méthode de distribution et, de cette façon si un développeur a besoin une copie des images à des fins de test, son relativement facile d'obtenir un ensemble d'entre eux relativement mises à jour.

Si vous n'allez pas exposer le versioning aux clients, alors ce serait le point?

Les clients sont déjà libres d'utiliser le contrôle de version sur leur propre fin, avant de soumettre les fichiers. Vous pouvez les encourager à le faire.

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