2012-04-03 7 views
10

¿Hay alguna manera de excluir un archivo especificado del proceso de fusión? al fusionarnos desde nuestra rama de producción a la rama de prueba para que lo usen los evaluadores, queremos excluir un archivo de configuración que contenga la cadena de conexión SQL. Evitando la necesidad de editarlo después de la fusión. Vi un comentario sobre el uso de la opción de capa, pero solo puedo ver esto disponible para carpetas, no archivos.Excluir un archivo de configuración del proceso de combinación

Tim

Respuesta

11

Hay varias maneras diferentes de hacerlo. Si no planea cambiar su archivo de configuración en el futuro y simplemente no desea que su contenido actual llegue a la sucursal principal, simplemente puede hacer una "fusión/descarte" en el archivo y verificar que . Eso básicamente dice, nunca fusionar los cambios que le han sucedido a este archivo con la rama de destino. Sin embargo, si el archivo cambia nuevamente, será un candidato para una combinación.

Por lo tanto, si planea continuar cambiando el archivo de configuración en cuestión, entonces tiene dos opciones. El primero es ocultar siempre este archivo en el área de trabajo de la rama en la que está realizando la fusión. Sí, es posible ocultar archivos, solo el selector en el cuadro de diálogo no lo hace fácil. Si navega hasta la carpeta que lo contiene, selecciónelo y luego ingrese manualmente el nombre del archivo al final de la cadena de la carpeta, la capa funcionará en el archivo. Este enfoque tiene la desventaja de que debe recordar ocultar siempre este archivo en el espacio de trabajo en el que está realizando la fusión y si alguien se olvida de hacerlo, el archivo se fusionará.

La tercera y probablemente la mejor solución a este problema es utilizar la herramienta de poder tfpt.exe con el comando branches para ocultar el archivo de configuración de las asignaciones de ramas principales. Puede descargar las últimas herramientas eléctricas de 2010 here. Querrá ejecutar "tfpt branches/properties/collection:" y luego seleccionar el canal "mappings". Allí probablemente solo verá una sola asignación para la raíz de la rama. Deberá crear una asignación de capa para el archivo que no desea fusionar y luego hacer clic en Aceptar. En todas las fusiones posteriores a esa rama (nota, desde cualquier otra rama), el archivo en cuestión no se fusionará.

+0

Estoy interesado en la tercera opción, ¿pueden darme más detalles sobre cómo hacerlo? No veo argumento any/properties para tfpt branches – WaldiMen

0
No

una solución muy agradable, pero usted podría quitar la seguridad de registro en ese archivo por lo que son incapaces de checkin el archivo después de una fusión.

+0

[Ocultar un archivo] (http://stackoverflow.com/a/9742947/147211) no sería suficiente? – KMoraz

+0

¿puedes ocultar un archivo? Solo vi esta opción disponible para directorios. – Tim

Cuestiones relacionadas