Git Diff - Cómo puedo revertir las líneas o trozos seleccionados


En Git GUI puedo seleccionar partes de un diff y escenificar solo esas líneas o trozos. ¿Cómo haría lo contrario, como en revertir líneas cambiadas en un archivo. Por lo general, estos son cambios accidentales en espacios en blanco que solo quiero revertir, pero aún así stage/commit otras partes del mismo archivo.

Author: Leif Gruenwoldt, 2012-05-31

3 answers

Para Git Gui: Primero, haga clic en Volver a escanear para buscar el archivo modificado. A continuación, haga clic en el icono a la izquierda del nombre del archivo para organizar todas las modificaciones para la confirmación. A continuación, haga clic derecho en la línea de depuración y elija Unstage Line Desde Commit.

La información anterior de: http://nathanj.github.com/gitguide/tour.html

 3
Author: Anil,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-05-31 02:54:39

Organiza las partes que deseas con git add -p, luego descarta (git checkout -- filename) los cambios no escalonados.

Actualización para Git 1.6.5+

En la versión 1.6.5, Git aprendió a pagar con una bandera -p/--patch. Puede descartar trozos en un solo paso con git checkout -p -- filename.

De los documentos :

Seleccione interactivamente trozos en la diferencia entre el (o el índice, si no se especifica) y el árbol de trabajo. Los trozos elegidos se aplican a continuación en sentido inverso al árbol de trabajo (y si se especificó un , el índice).

Esto significa que puedes usar git checkout-p para descartar selectivamente las ediciones de tu árbol de trabajo actual.

 53
Author: ellotheth,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-03-23 10:30:34

En Git Gui,

  1. Organizar todo el archivo que contiene el(los) cambio (s) no deseado (s)
  2. Eliminar las líneas / trozos que desea revertir
  3. Seleccione el archivo en el Unstaged Cambios panel y Commit->Revertir Cambios para deshacer todos (unstaged) cambios en el archivo

Fuente: http://git.661346.n2.nabble.com/Revert-hunk-td4991128.html

 10
Author: Leif Gruenwoldt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-08-20 15:02:37