es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Git pull crea archivos duplicados con el nombre (conflict_on_)

A veces, cuando ejecuto “git pull”, ciertos archivos aparecen con “(conflict_on_)” al final del nombre del archivo. No sé qué está causando esto y buscar en Google y Stack no ha dado resultados. Los archivos no siempre tienen cambios, y algunos de los archivos duplicados con “conflict_on” en el nombre están git-ignorados.

Proceso:
1. Tener un archivo “environment.ts” (ignorado por git, con cambios locales).
2. Ejecutar “git pull”.
3. Se crea un archivo en el mismo directorio que “environment.ts” con el nombre “environment (conflict_on_12-16-21).ts”.

Esto lo estoy ejecutando en Mac OS Monterey en una Mac con chip M1 Pro. A veces uso el git desktop y a veces uso la línea de comandos de git. Versión de git 2.30.1.

¿Qué está causando esto y cómo puedo evitar que suceda?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Este problema es probablemente causado por un conflicto de fusión que ocurre cuando Git intenta combinar múltiples versiones del mismo archivo. Cuando esto sucede, Git crea un nuevo archivo con el sufijo (conflict_on_<date>) para preservar ambas versiones del archivo.

    Para evitar que esto ocurra, puedes intentar evitar hacer cambios conflictivos en el mismo archivo que tus colaboradores. Alternativamente, puedes usar las herramientas de fusión de Git para resolver conflictos manualmente, o utilizar una herramienta de terceros como Beyond Compare o KDiff3. Es posible que también desees revisar tu archivo .gitignore para asegurarte de que esté excluyendo los archivos apropiados para ser rastreados por Git.

    Si encuentras este problema con frecuencia, también puedes intentar configurar Git para usar una estrategia de fusión o controlador de fusión diferente que se ajuste mejor a tu flujo de trabajo. Por ejemplo, puedes usar la estrategia merge.ours o merge.theirs para resolver conflictos automáticamente manteniendo tus cambios o los cambios de tus colaboradores, respectivamente.

    En general, resolver conflictos de fusión es una parte importante de utilizar Git, y hay muchos recursos disponibles para ayudarte a entender y superar este problema.

Comments are closed.