El repository svn crece fuera de control debido a comstackciones

Tengo un problema con el tamaño de mi repository, mi repository crece fuera de control porque en un punto nuestro grupo de proyecto decidió mantener nuestras comstackciones también en svn, cada binary tiene alnetworkingedor de 30 MB, las copys de security diarias del repository toman 4-5 GB. después de unos cientos, se registran. Se está volviendo bastante difícil tomar una copy de security del repository y copyrlo a un lugar de la networking donde se realiza una copy de security todos los días.

  • ¿Cuáles son las mejores prácticas para mantener una copy de security de cada compilation?

  • ¿Puedo crear un activador svn commit que comprima y copie la compilation en algún lugar en lugar de ponerlo en svn?

  • ¿Cómo puedo networkingucir mi tamaño de repo?

  • ¿Puedo deshacerme de algunos binarys antiguos con commands svn?

¿Cuáles son las mejores prácticas para mantener una copy de security de cada compilation?

No lo hagas. SVN (y todos / la mayoría de otros sistemas de control de versiones (VCS)) están diseñados para almacenar de manera eficiente documentos de text (código fuente) al usar / almacenar diffs. Esto no funciona para binarys.

¿Puedo crear un activador svn commit que comprima y copie la compilation en algún lugar en lugar de ponerlo en svn?

Probablemente, pero es un hack importante que (probablemente) debe hacerse en cada computadora que tiene un checkout en el repository. Si desea recuperar estas cremalleras de nuevo cuando realiza la compra en el repository, se vuelve aún más molesto.

¿Cómo puedo networkingucir mi tamaño de repo?

¿Puedo deshacerme de algunos binarys antiguos con commands svn?

Una vez que haya cometido algo en SVN (y en la mayoría de los otros VCS) se queda, no puede modificar el historial. Dicho esto, puede crear un nuevo repository que puede copyr todos los cambios (hay algunas herramientas para ello, para mantener los posts de confirmación). Tal vez sea posible volver a comprometer todo (sin las comstackciones) y usar ese repository a partir de ese momento. (Asegúrese de que todos los socios del proyecto revisen el nuevo repository para evitar problemas)

Como habrás notado, almacenar todos los files derivados (comstackciones) en un VCS es 'no-una-buena-cosa'. Para la reproducibilidad, puede almacenar información de compilation, como los numbers de versión de las herramientas utilizadas, en su lugar. Por lo tanto, siempre es posible rebuild una construcción específica si es necesario.

Utilice una location compartida que solo contenga la compilation más nueva para que todos los socios del proyecto puedan ver / probar esta compilation más nueva.

¡Pero no lo guarde en un VCS nunca más!

¿Cuáles son las mejores prácticas para mantener una copy de security de cada compilation?

Use las herramientas correctas para cada tarea. El control de código fuente puede administrar los artefactos de construcción, pero solo de manera deficiente. Usar el administrador de artefactos para este trabajo

¿Puedo crear un activador svn commit que comprima y copie la compilation en algún lugar en lugar de ponerlo en svn?

Sí, teóricamente en los ganchos puede hacer cualquier cosa (comstackr, archivar, implementar), pero (de nuevo) las herramientas especiales pueden hacerlo más fácil y sin problemas para el usuario final (leer "Jenkins", "Maven")

¿Cómo puedo networkingucir mi tamaño de repo?

Crear volcado, eliminar revisiones no deseadas en volcado, restaurar volcado pulido

¿Puedo deshacerme de algunos binarys antiguos con commands svn?

No puedes hacerlo con herramientas del lado del cliente, solo con svnadmin- | dumpfilter-hacking dump