git restore
git
Uso
git restore [--staged] [-s <commit>] <pathspec>El comando de git 2.23 para devolver el contenido de un archivo; por defecto sobrescribe tu archivo y los cambios sin commit desaparecen, mientras --staged solo quita del área de preparación.
Opciones habituales
| Opción | Significado |
|---|---|
| --staged | unstage the file but keep your edits |
| --worktree | reset the file on disk; this is the default |
| --staged --worktree | both: throw the edits away and unstage |
| -s <commit> | take the content from that commit instead of the index |
| -p | choose hunk by hunk |
Ejemplos
git restore src/app.tswipes uncommitted edits to that file, with no way back
git restore --staged src/app.tstakes it out of the staging area, edits intact
git restore -s HEAD~2 src/app.tsbrings back the version from two commits ago
Lo confuso es que deshacer tiene varias formas: mover a dónde apunta una rama no es lo mismo que añadir un commit que la revierte.
Cómo leerlo
- Los corchetes [ ] marcan una parte que puedes omitir.
- Los puntos suspensivos … indican que puedes poner varios.
- Las opciones distinguen mayúsculas: en algunos comandos -r y -R no hacen lo mismo.
Preguntas
Q. ¿Qué hace git restore?
El comando de git 2.23 para devolver el contenido de un archivo; por defecto sobrescribe tu archivo y los cambios sin commit desaparecen, mientras --staged solo quita del área de preparación.
Q. ¿Cómo se escribe?
git restore [--staged] [-s <commit>] <pathspec> — los corchetes marcan lo que puedes omitir.
Q. ¿Cuántas opciones vale la pena saber?
Aquí van 5; la lista completa está en man git. Este comando está en git.
Comandos relacionados
página man: man git-restore