tipos tag remove practices etiquetas crear best git version-control merge merge-conflict-resolution filemerge

remove - git tag best practices



¿Limpiando después de una fusión git conflictiva? (3)

Primero cometa su fusión.

Una vez que esté satisfecho de que todo está bien, simplemente elimine estos archivos adicionales manualmente (por ejemplo, utilizando rm <filename> ).

Tuve un pequeño conflicto en un archivo de encabezado .h en un proyecto en el que estoy trabajando. Este proyecto se rastrea en Git.

Afortunadamente, el conflicto fue muy simple de resolver. solía

git mergetool

Y elegí el predeterminado ( opendiff ) que parecía ser FileMerge en mi Mac. Hice los cambios apropiados, guardé el archivo y cerré.

Git luego me preguntó si la fusión fue exitosa, dije que sí:

Was the merge successful? [y/n] y

Pero ahora tengo:

> git st # On branch develop # Changes to be committed: # modified: MyHeader.h # # Untracked files: # (use "git add <file>..." to include in what will be committed) # # MyHeader.h.BACKUP.52920.h # MyHeader.h.BASE.52920.h # MyHeader.h.LOCAL.52920.h # MyHeader.h.REMOTE.52920.h # MyHeader.h.orig

¿Cuál de esos archivos extra de conflicto basura fue creado por FileMerge y cuál por Git?

Y lo más importante: ¿Cómo los elimino?


Si son los únicos archivos sin seguimiento, puede usar git clean para eliminarlos. Ejecútelo una vez con el indicador -n para ver qué se eliminará y luego, si está seguro, ejecútelo con -f . ¡No lo use si tiene archivos sin seguimiento que desea conservar!


Simplemente puede eliminarlos como lo haría con cualquier otro archivo. Por ejemplo:

rm MyHeader.h.orig

Alternativamente, si no hay otros archivos sin seguimiento, luego de confirmar con

git commit -a

puedes limpiar tu repositorio con

git clean -n git clean -f

git clean -n te dirá qué hará git clean -f , para que puedas estar seguro de que es lo que quieres.