2012-07-09 7 views
8

¿Es posible cambiar los marcadores de conflicto a algo definido por el usuario?Cambiar los marcadores de conflicto de git

motivación:

Ha ocurrido varias veces para mí que, debido a la fusión mucho cuidado apresurada y no de varias ramas, hay algunos encima fusionar las etiquetas en mi documento LaTeX. Con la mayoría de los proyectos de programación, estas etiquetas generarían un error de sintaxis y, por lo tanto, las detectaría. Sin embargo, en Latex las etiquetas < < < <, ==== y >>>> se acaban de compilar en algunas otras secuencias de caracteres sin previo aviso.

Para remediar esto, me gustaría cambiar estos marcadores de conflicto en algo que no compila, o al menos los hace muy obvios de detectar (por ejemplo, saltos de página, advertencias de fuentes grandes o advertencias de compilación).

Por supuesto, podría hacer un script (bash) que reemplace todos esos marcadores por algo de mi elección, pero preferiría una solución más elegante a este problema.

P.S. Encontré la opción merge.conflictstyle, pero la opción diff3 solo agrega el |||| marcador que también compila sin previo aviso.

Respuesta

7

Incluso si hubiera una forma de hacer marcadores de conflicto personalizados LaTeX específicos (no creo que exista, pero podría estar equivocado), podría ser difícil elegir uno que funcionó en todos los casos. Una solución más fácil sería habilitar el enlace "pre-commit" de stock de git, que identifica los marcadores de conflicto en el momento de la confirmación y rechaza la confirmación si están presentes. Para habilitarlo:

cd <repo> 
mv .git/hooks/pre-commit.sample .git/hooks/pre-commit 

El gancho de inventario que se envía con git también busca errores de espacio en blanco. Para ejecutar la comprobación manualmente, utilice este comando:

git diff --check 
+0

Esta es una solución práctica. Cuando se comete erróneamente un archivo con etiquetas de combinación en él, se imprimirá 'marcador de conflicto sobrante' con el nombre del archivo y el número de línea. Esto ciertamente ayudará a mantener mi documento correcto. – Laar

1

Tal vez usted puede cambiar el atributo conflict-marker-sizecon un gran número de. Por número grande, me refiero a un número que activaría una advertencia de látex porque la línea es demasiado larga.

$ cat .gitattributes 
*.tex conflict-marker-size=100 ;# Or whatever makes Latex unhappy 
Cuestiones relacionadas