No se puede finalizar la compra, el archivo no se fusionó

85

Estoy tratando de eliminar el archivo de mi directorio de trabajo, pero después de usar el siguiente comando

git checkout file_Name.txt

Recibí el siguiente mensaje de error

error: path 'first_Name.txt' is unmerged

¿Qué es eso y cómo solucionarlo?

A continuación se muestra mi estado de git

$ git status
On branch master
You are currently reverting commit f200bf5.
  (fix conflicts and run "git revert --continue")
  (use "git revert --abort" to cancel the revert operation)

Unmerged paths:
  (use "git reset HEAD <file>..." to unstage)
  (use "git add <file>..." to mark resolution)

        both modified:      first_file.txt

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        explore_california/

no changes added to commit (use "git add" and/or "git commit -a")
Naseer
fuente
Eso se movió al índice de ensayo pero no puedo limpiar la carpeta explore_california /
Naseer
1
Si desea eliminar explore_california, simplemente haga una, rm -r explore_californiaya que git no lo rastrea.
Brokenfoot
Lo que hizo es pedirme que elimine más de 50 archivos individualmente y sigo presionando y.
Naseer
Pero funcionó finalmente.Gracias
Naseer

Respuestas:

28

Para eliminar archivos rastreados (first_file.txt) de git:

git rm first_file.txt

Y para eliminar archivos sin seguimiento, use:

rm -r explore_california
pie roto
fuente
124

Si desea descartar las modificaciones que realizó en el archivo, puede hacer lo siguiente:

git reset first_Name.txt
git checkout first_Name.txt
cristianoms
fuente
2
¿Necesita el argumento de doble guión? git reset - first_name.txt y git checkout - first_name.txt
erizo demente
2
Solo usa --para separar el árbol que desea desproteger de los archivos que desea desproteger. Para obtener una explicación más detallada, obtenga un botín aquí: stackoverflow.com/questions/13321458/…
cristianoms
4
Creo que es más seguro usar el guión doble git reset -- first_Name.txty git checkout -- first_Name.txten caso de que el nombre del archivo sea el mismo que el de una de sus ramas / etiquetas / confirmaciones.
joeytwiddle
18

el estado le dice qué hacer.

Unmerged paths:
  (use "git reset HEAD <file>..." to unstage)
  (use "git add <file>..." to mark resolution)

probablemente aplicó un alijo u otra cosa que cause un conflicto.

ya sea agregar, restablecer o rm.

gcb
fuente
2
Exactamente apliqué un alijo. Ahora la pregunta es cuándo usar add, cuándo resety cuándo usar rm. Por ejemplo, ¿no quiero mantener la versión oculta, sino la versión anterior?
Pro Backup
14

Lo siguiente me funcionó

git reset HEAD

Estaba recibiendo el siguiente error

git stash
src/config.php: needs merge
src/config.php: needs merge
src/config.php: unmerge(230a02b5bf1c6eab8adce2cec8d573822d21241d)
src/config.php: unmerged (f5cc88c0fda69bf72107bcc5c2860c3e5eb978fa)

Entonces corrí

git reset HEAD

funcionó

Mahesh Hegde
fuente
4

No creo ejecutar

 git rm first_file.txt

es una buena idea.

  1. cuando git note que sus archivos no están fusionados, debe asegurarse de haberlos comprometido.

  2. Y luego abra el archivo de conflicto:

    cat first_file.txt

  3. arreglar el conflicto

4.

git add file

git commit -m "fix conflict"

5. git push

debería funcionar para usted.

Steven
fuente
1

En mi caso, descubrí que necesito la opción -f. Como los siguientes:

git rm -f first_file.txt

para deshacerse del error "debe fusionarse".

alant
fuente
0

Resolví siguiendo 2 sencillos pasos:

paso 1: git reset Head paso 2: git add.

kallayya Hiremath
fuente