2010-07-08 16 views
49

Fundí rama de perro en animal. Cuando voy a cometer, me sale el siguiente:Git ruta de acceso sin conexión

Para hacer el cuento largo, que tenía diferentes nombres de directorios y nombres de archivos en cada rama. La rama animal tiene los cambios que quiero.

Cuando voy a restablecer el cabezal, no funciona. Y cuando voy a tomar cualquier otra acción de git (eliminar, pagar, etc.), obtengo un error de ruta no encontrada.

¿Qué comandos necesito para ejecutar?

Respuesta

51

Todo lo que necesitará hacer es:

# if the file in the right place isn't already checked in 
git add <path to desired file> 
# remove the "both deleted" file from the index 
git rm --cached ../public/images/originals/dog.ai 

git commit   # commit the merge 
+0

explicación adicional sería útil –

33

Otra forma de hacer frente a esta situación si los archivos que ya estén marcados, y sus archivos se han fusionado (pero no comprometido, por lo que la combinación de los conflictos son insertado en el archivo) es ejecutar:

git reset 

Esto cambiará a la cabeza, y decirle a Git se olvide ninguna conflictos de fusión, y dejar el directorio de trabajo como es. Luego puede editar los archivos en cuestión (busque los avisos "actualizados en sentido ascendente"). Una vez que ha tratado con los conflictos, puede ejecutar

git add -p 

que le permitirá seleccionar de forma interactiva la cual los cambios que desea agregar al índice. Una vez que el índice se ve bien (git diff --cached), se puede cometer, y luego

git reset --hard 

para destruir todos los cambios no deseados en el directorio de trabajo.

+0

¿Qué es '" Upstream actualizado avisos'? – saikosen

+2

@takias: los marcadores en cada archivo que se ven como: '<<<<<<< [rama] \ n [contenido] \ n ==== n [contenido] \ n [rama] >>>>> >> '. Creo que el formato puede haber cambiado ligeramente desde que escribí esto, pero vea https://wincent.com/wiki/Git_merge_conflict_cheatsheet para ver un ejemplo. – naught101

Cuestiones relacionadas