2012-08-21 25 views
6

Me olvidé accidentalmente de "agregar git". un montón de archivos que he creado antes de crear una nueva rama usando "git checkout -b name" y todos mis archivos sin etapas han sido reemplazados por los archivos del encabezado.Restaurar archivos eliminados por Git checkout

¿Hay alguna forma de recuperar estos archivos? No están escondidos ni han sido comprometidos. Además, no estoy usando un IDE que guarde un historial de archivos.

He leído acerca de "git fsck --lost-found", pero antes de intentarlo, ¿hay alguna otra forma en que pueda revertir los archivos no montados de nuevo al sistema de archivos?

+1

No entiendo muy bien lo que hizo. ¿Perdiste cambios sin escena? Normalmente git intenta bastante para protegerlos. Por ejemplo, si ejecuta "git checkout -b name" con cambios no supervisados, git * will * preserve them. ¿Podría dar instrucciones paso a paso sobre cómo reproducir su problema? – sleske

+0

Por el momento, me temo que es poco probable que tu pregunta obtenga una buena respuesta, porque lo que describes no debería suceder con git (y no pude reproducirlo). – sleske

+1

No puedo reproducir ese problema en un nuevo 'git init'. Este es de hecho un problema muy extraño. No perdí cambios sin grabar, pero esencialmente una carpeta que representaba un paquete y un archivo fuente que estaba dentro de él. Lo que hice exactamente fue: 1. En algún momento cloné un repositorio, desde entonces hice algunos commits a los archivos por etapas. 2. He agregado algunos archivos más en el sistema de archivos sin agregarlos a la puesta en escena. 3. He vuelto a realizar algunos commits en los archivos por etapas. 4. Creé una nueva rama con checkout -b de HEAD desde la rama principal y mis archivos sin grabar habían desaparecido. –

Respuesta

1

Desafortunadamente no hay forma (no es que lo haya encontrado). Una vez que hice algo así, pero estaba usando Aptana Studio y pude recuperar todos los archivos.

De todos modos, una buena práctica es mantener sus compromisos pequeños. Cuando lo haga, nunca perderá más de 30 minutos, incluso con accidentes como ese.

+0

Espera, ¿qué? Estoy con @sleaske en este caso. Si la integración git de Aptana está abandonando los cambios que git no haría, es Aptana. eso está roto, no git. – Christopher

+0

Una observación interesante es que he estado usando la línea de comandos de Eclipse y Git y en este punto el paquete/archivos perdidos todavía son visibles en Eclipse pero no se puede abrir ya que hay un 'Error al recuperar contenido descripción para resource/xxx/xxx/dashboard '. Además, la' Restauración del historial local 'no funciona, ya que recibo un mensaje informándome que no hay un historial local para este archivo. –

+1

Aclarando mi respuesta. Estaba usando Aptana como editor pero usando 'git' en la línea de comando. Como Aptana mantiene todas las pestañas abiertas (todos los archivos que he estado editando) solo necesitaba guardarlos de nuevo. – hsgubert

Cuestiones relacionadas