¿Cómo deshacer "git add." Durante una combinación?

$ git checkout to-branch $ git merge from-branch $ git status | grep unmerged # file1 unmerged # file2 unmerged # file3 unmerged $ vi file1 $ git add . 

¡Eek! No quise decir "git add". ¡Quise decir "git add file1"!

Ahora no puedo get un comportamiento como:

 $ git show :1:file2 

Lo intenté:

 $ git reset file2 

y

 $ git checkout -m file2 

pero ninguna de esas devuelve el file2 a un estado "no asociado". El estado de git no lo muestra como no compartido y no tengo acceso a "git show: 1: file2", etc. Quiero volver a poner el file en el estado no compartido.

¿Cómo puedo volver al estado en el que estaba antes de "agregar git"? sin perder mis cambios al file1?

(No probado) ¿Lo intentó?

  git checkout -m /path/to/file2 git checkout -m /path/to/file3 

?

Al verificar las routes desde el índice, esta opción le permite recrear la combinación conflictiva en las routes especificadas

Si esto no funciona, es posible que tenga otras respuestas en la pregunta " ¿Cómo puedo recuperar mis conflictos de fusión de git después de fusionarlos incorrectamente? "

En caso de que alguien todavía tenga este problema (como lo hice hace un momento), puedes (ahora) hacer esto:

 git update-index --unresolve file2 file3