Pregunta

Estamos teniendo una discusión animada sobre esto en mi lugar de trabajo. Estamos hablando de imágenes subidas por el usuario para un grupo de productos, no imágenes necesarias para visualizar el sitio básico. Digo "de ninguna manera", pero tengo curiosidad por lo que otros piensan.

Actualización: Solo para aclarar. Estos son proporcionados por el cliente imágenes de los productos que están Introducir / modificar.

¿Fue útil?

Solución

Estoy de acuerdo con 'ninguna manera'.

Cualquier cosa que pueda cambiar en el sitio a través del uso del día a día, o es editable por el que administra el sitio web que considero que es 'contenido'. Esto incluye los archivos cargados y el contenido de la base de datos, los cuales están respaldados por separado. Nada en el sitio web que está en los cambios de control de versiones vez que se ha desplegado. Fácil de esa manera.

Otros consejos

Otras formas de preguntar si algo debe estar en control de versiones:

  • ¿Cambian las imágenes?
  • ¿Son los cambios relacionados con cualquier otra cosa?
  • hacerse
  • Los errores pueden?
  • se quiere / necesita trazabilidad?

Si el resto del sitio es controlado versión, el control de versiones de las imágenes.

Si se generan las imágenes, control de versiones del generador.

Es de suponer que lo que estamos hablando es de contenido que sería clasificada como datos de usuario, a diferencia de los archivos de proyecto. Esas cosas, si bien son importantes, no necesita control de versiones -. Que necesita un mecanismo de copia de seguridad simple y llano

He añadido recientemente un nuevo proyecto en un repositorio SVN fresca, y cada vez que miro a la carpeta 'subidas' Me di cuenta de lo estúpido que era para incluir que en el primer commit.

Parece que lo que estamos hablando es el contenido que se encuentra en (o tal vez será) en una base de datos. Si un cliente le está suministrando una lista de productos, así como las imágenes de los productos, a continuación, que todos deben venir de una base de datos. En este caso, yo no porque su base de datos debe estar respaldada, pero no en la VCS.

Si no lo es, y su sitio web es estático, entonces yo sólo porque es "parte del sitio."

Si usted siente que debe de revisión que, a poner estos recursos fuera de la trayectoria del repositorio principal de alguna manera, y luego darle un repositorio dedicado sólo para ese contenido.

Usted no quiere que todo el mundo que tiene de revisar el código para conseguir una copia de cada imagen cuando se descarga o una actualización, su lenta, y sin sentido, y para que estén en su árbol primario solo tendrá más dolores de cabeza que se puede imaginar.

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

Si usted tiene que utilizar enlaces simbólicos o la magia de servidor web para que esto suceda, a continuación, hacer eso, pero lo que sea que hagas, No poner el contenido de esa manera en su repositorio principal.

En cuanto a las copias de seguridad vs revisioning van, revisioning ello como esto le da un ligero facilidad si está usando SVN como su método de distribución, así, de esa manera, si un desarrollador necesidades una copia de las imágenes con fines de prueba, su relativamente fácil de obtener un conjunto relativamente actualizada de ellos.

Si no se va a exponer el control de versiones de los clientes, entonces ¿cuál sería el punto?

Los clientes que ya son libres de utilizar el control de versiones de su propio fin, antes de presentar los archivos. Es posible que desee para animarles a hacerlo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top