versiones tipos subversion source son software sistema open los fuente ejemplos documentos cuáles control codigo version-control

version control - tipos - ¿Control de versión para control de versión?



sistema de control de versiones ejemplos (4)

¿Qué hay de malo con el uso del mismo repositorio de control de versión para los enganches de confirmación y otros archivos de configuración? Así es como lo manejé en el pasado cuando fui responsable de la administración de la configuración de un proyecto.

También debe hacer una copia de seguridad de su repositorio svn. De esta forma, si el repositorio se daña o el servidor se incendia o algo así, puede recuperar tanto su proyecto como los archivos de control svn.

Estuve supervisando la bifurcación y la fusión a lo largo del último lanzamiento en mi empresa, y varias veces tuve que modificar nuestros ganchos precompromisos de Subversion para aplicar diferentes requisitos en los comentarios de check-in y demás. Estaba un poco nervioso cada vez que editaba esos archivos, porque (a) son parte de un sistema de producción en vivo, aunque solo se usa internamente (y no somos una gran organización), y (b) no lo son. bajo la versión de control ellos mismos.

Tengo curiosidad por saber qué tipo de fallas de seguridad tienen las personas en su infraestructura de control de versiones. ¿Copias de seguridad diarias? ¿Control de versión "Meta"? Supongo que el primero está en su lugar aquí como parte de la copia de seguridad de todo el repositorio. Y lo último sería útil a medida que crezca la complejidad de los requisitos de check-in ...


Debe documentar toda la configuración de "configuración" para todas sus herramientas y estos documentos deben verificarse en el control de la versión. Para las herramientas con configuraciones de archivos de texto que permiten comentarios, puede registrar el archivo de configuración. Pero para las herramientas que requieren el uso de la interfaz, debe tener un documento completo con las imágenes de los cuadros de diálogo que muestran qué opciones se eligen.

Sin embargo, lo más importante es que estos documentos deben decir POR QUÉ has ​​establecido los valores elegidos (cuando no tomas el valor predeterminado).

En segundo lugar, como copia de seguridad, los mismos documentos deben incluirse en su software de seguimiento de errores en un "¿Cómo configuro el software de control de versiones?" error. (La base de datos de seguimiento de errores se encuentra en un servidor físico diferente, ¿no?)

Tercero, todo esto debe ser respaldado fuera del sitio. Estoy seguro de que hay preguntas sobre SO sobre estrategias de copia de seguridad.


Natch: el control de versiones y cualquier otro código de infraestructura también está bajo control de versión, pero yo usaría un proyecto separado de cualquier proyecto de desarrollo.

Prefiero un wiki de búsqueda o un repositorio de base de conocimiento similar para obstruir tu sistema de seguimiento de errores con cosas como la configuración de VCS.

Lo que es más importante, asegúrese de que la documentación esté actualizada: en mi experiencia, las personas son mucho mejores para mantener los documentos de código actualizados que los documentos de administración. Esto puede haber sido a las personas afectadas. Una cosa que a menudo se pasa por alto es que si los sistemas se configuran de acuerdo con las prácticas estándar de Unix o filosofía similar, eso implica un cuerpo de conocimientos sobre ubicaciones que pueden no ser familiares para un programador de OS / X o Windows, que se enfrenta repentinamente con un script roto . Sin ser condescendiente, asegúrese de que las suposiciones básicas sobre la ubicación y la interdependencia estén documentadas.


Si tiene scripts de compilación que están haciendo esto (como Nant), entonces podría verificarlos.