Estoy considerando migrar de subversion a git. Una de las cosas que utilizamos es la subversión para que nuestros administradores de sistemas administren cosas como archivos de configuración. Con ese fin, ponemos $URL$
en cada archivo, que se expande a la ubicación del archivo en el árbol de subversión. Esto permite que los administradores observen un archivo en un host arbitrario y descubran en qué árbol se encuentra.
El análogo más cercano que pude encontrar es gitattributes. Existe la directiva filter=
, pero parece que git no comunica al filtro qué nombre de archivo está filtrando, lo que sería necesario para convertir $URL$
en una ruta.
También está la directiva ident
, que convertiría $Id$
en el hash blob. Esto podría ser útil si uno pudiera mapear eso en una ruta, pero mi git-fu no es lo suficientemente fuerte.
¿Alguna sugerencia?
El flujo de trabajo es el siguiente:
- administración se compromete cambios en el repositorio VCS
- administrador actualiza una ubicación central, que ha comprobado el repositorio
- administración tira de los cambios en el host mediante cfengine
Cuando dices ruta, se usa principalmente para identificar una rama o el camino real dentro de una rama? –
Me refiero a la ruta del archivo. Entonces, si un administrador mira el archivo '/ etc/apache2/sites-available/trac', verá que puede encontrar ese archivo en el VCS como' https://eng.svn.pdaverticals.com/trunk/net/http/apache2/sites/trac'. De lo contrario, tiene que buscar y esperar que el nombre de archivo coincida, lo que podría no ser, porque algunos archivos reciben diferentes nombres cuando se envían a un host, y algunos archivos están compuestos de un grupo de fragmentos de archivos distintos y no lo hacen. incluso tiene un análogo en el VCS. – Rudedog