Subversion: ¿establecer el gancho de confirmación predeterminado?

Subversion: ¿establecer el gancho de confirmación predeterminado?

¿Existe alguna forma de configurar un enlace de confirmación personalizado para que sea un enlace "predeterminado" cuando se crean los repositorios?

Respuesta1

Fuera de los nueve ganchos estándar instalados en un nuevo repositorio mediante el comando 'svnadmin create /path/to/repo' (start-commit, pre/post-commit, pre/post-revprop-change, pre/post-lock y pre/post-desbloqueo), no conozco ninguna manera de incluir ganchos adicionales automáticamente como gancho "predeterminado" para todos los repositorios recién creados.

Supongo que podría crear un script de shell contenedor para crear nuevos repositorios que llame al comando svnadmin create con una variable configurada para la ruta del repositorio seguido de una copia del gancho de confirmación personalizado en la carpeta ruta/al/repo/hooks y usarlo para todos los repositorios nuevos.

Por último, como mencionas que este gancho personalizado en particular es un gancho de confirmación, debo repetir la advertencia dada porControl de versiones con Subversional discutirguiones de gancho(el énfasis es mío):

Si bien los scripts de gancho pueden hacer casi cualquier cosa, hay una dimensión en la que los autores de scripts de gancho deben mostrar moderación:no modifique una transacción de confirmación utilizando scripts de enlace. Si bien puede resultar tentador utilizar secuencias de comandos de enlace para corregir automáticamente errores, deficiencias o violaciones de políticas presentes en los archivos que se confirman, hacerlo puede causar problemas. Subversion mantiene cachés del lado del cliente de ciertos bits de datos del repositorio, y si cambia una transacción de confirmación de esta manera, esos cachés se vuelven indetectablemente obsoletos. Esta inconsistencia puede llevar a comportamientos sorprendentes e inesperados. En lugar de modificar la transacción, simplemente debe validar la transacción en el gancho de confirmación previa y rechazar la confirmación si no cumple con los requisitos deseados. Como beneficio adicional, sus usuarios aprenderán el valor de unos hábitos de trabajo cuidadosos y orientados al cumplimiento.

información relacionada