tipos tag remove practices etiquetas crear best git whitespace git-merge

git - tag - Fusionar sin conflictos de espacio en blanco



git tag best practices (1)

git merge -Xignore-all-space

O (más preciso)

git merge -Xignore-space-change

debería ser suficiente para ignorar todos los conflictos relacionados con el espacio durante la fusión.

Ver git diff :

--ignore-space-change

Ignore los cambios en la cantidad de espacios en blanco.
Esto ignora los espacios en blanco al final de la línea, y considera que todas las demás secuencias de uno o más caracteres en espacio en blanco son equivalentes.

--ignore-all-space

Ignora el espacio en blanco al comparar líneas.
Esto ignora las diferencias incluso si una línea tiene espacios en blanco donde la otra línea no tiene ninguno.

ks1322 agrega en los comentarios un buen consejo:

Vale la pena fusionarse con --no-commit y revisar la fusión antes de la confirmación real .

El OP Callum Macrae informa que, en ese caso, la fusión continúa ininterrumpidamente y los espacios finales contenidos en los parches de solicitud de extracción se aplican a los archivos locales.
Sin embargo, el OP utiliza un gancho precompromiso que se encarga de dichos espacios finales.
(Supongo que es un poco similar a este , también se hace referencia aquí ).

El gancho precompromiso de OP se hace referencia aquí :

Además de eliminar los espacios en blanco al final, elimina de uno a tres espacios antes de las pestañas (tengo el ancho de la pestaña establecido en 4) y agrega EOL.
He recibido informes de que el código que agrega el EOL borra el archivo en Windows, pero no ha podido replicarlo.

Tengo un problema en el que tengo un compromiso grande que cambia unas mil líneas de código, elimina espacios en blanco del final de las líneas y quita espacios antes de las pestañas.

También hay alrededor de 50 solicitudes de extracción para este proyecto, que tendrán conflictos cuando se combine mi confirmación. ¿Hay alguna forma de configurar git para que al fusionar compromisos futuros ignore conflictos donde uno de ellos es solo un cambio de espacio en blanco?

No es posible modificar git ni utilizar una herramienta de terceros, pero usar un gancho está bien.