Pregunta

¿Es posible configurar TortoiseMerge (viene con TortoiseSVN) para ser la herramienta de fusión externo que aparece cuando se produce algún conflicto de combinación con el "svn merge" de comandos? He intentado fijar mi variable de entorno "SVN_MERGE" a punto de TortoiseMerge.exe, pero esto no parece ser suficiente. TortoiseMerge solo aparece cuando elijo "L" (para lanzar una herramienta externa) me pregunta qué archivos que desea combinar. Quiero que esta información se introduce en la herramienta de forma automática.

¿Alguna idea?

¿Fue útil?

Solución

No sé qué versión de Subversion que está utilizando, así que voy a tratar de hacer referencia a la información en la versión más reciente del Subversion documentación , de 1,6. (Añaden en esa página que "si marcador o enlace a secciones específicas, los enlaces pueden ser invalidadas por el continuo desarrollo." Pero no hay una versión estable para 1.6.)

En primer lugar, la malas noticias :

  

Para usar una herramienta de combinación, es necesario   o bien establecer el entorno SVN_MERGE   variable o definir la fusión-herramienta-cmd   opción en su subversión   archivo de configuración (consulte la sección   denominado “Opciones de configuración” para   más detalles). Subversión pasará   cuatro argumentos a la herramienta de combinación: las   revisión BASE del archivo, el   revisión del archivo recibido de la   servidor como parte de la actualización, la copia   del archivo que contiene su localidad   ediciones, y la copia combinada del archivo   (Que contiene marcadores de conflicto). Si   su herramienta de combinación está a la espera argumentos   en un orden o formato diferente, se le   tiene que escribir un guión envoltorio para   Para invocar la subversión.

El ligeramente mejor noticia es que Subversion ha anticipado a su pregunta, un tanto. Vea la sección Uso Diferenciación externa y herramientas Combinar ; hay plantillas de envoltorios externos herramienta de combinación.

En su caso específico, la documentación TortoiseMergetiene un apéndice que explica cómo utilizar desde la línea de comandos. Los interruptores son esenciales /base, /mine y /theirs, pero es posible que desee usar más (que está escribiendo su propio guión envoltorio, después de todo). TortoiseMerge también permite una "forma simplificada" del comando:

TortoiseMerge BaseFilePath MyFilePath TheirFilePath

La forma de comunicar los resultados de su posterior fusión a Subversion es escribiendo el archivo combinado a la salida estándar y devolver un valor apropiado. Esta información se coloca prominente en las plantillas de envoltura en el manual de Subversion.

Otros consejos

Crear un script murciélago que es similar al siguiente:

"c:\Program Files\TortoiseSVN\bin\TortoiseMerge.exe" /base:"%1" /theirs:"%2" /mine:"%3" /merged:"%4"

A continuación, establezca la variable de entorno SVN_MERGE a ese guión bate:

set SVN_MERGE=c:\bin\svnmerge.bat
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top