Cómo mostrar cambios no confirmados en Git y algunas diferencias de Git en detalle
¿Cómo muestro cambios no confirmados en Git?
Hice STFW y estos comandos no funcionan:
teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git status
On branch teyan/psservice
Your branch is up-to-date with 'origin/teyan/psservice'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: psservice.c
modified: psservice.vcxproj.filters
teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git diff
teyan@TEYAN-THINK MINGW64 /d/nano/repos/PSTools/psservice (teyan/psservice)
$ git diff master
fatal: ambiguous argument 'master': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
Cómo mostrar cambios no confirmados en Git
El comando que estás buscando es git diff
.
git diff
- Mostrar cambios entre confirmaciones, confirmación y árbol de trabajo, etc.
Estas son algunas de las opciones que expone y que puede utilizar.
git diff
(sin parámetros)
Imprima las diferencias entre su directorio de trabajo y el índice.
git diff --cached
:
Imprime las diferencias entre el índice y HEAD (compromiso actual).
git diff HEAD
:
Imprima las diferencias entre su directorio de trabajo y HEAD.
git diff --name-only
Mostrar solo los nombres de los archivos modificados.
git diff --name-status
Muestra solo los nombres y el estado de los archivos modificados.
git diff --color-words
Diferencia palabra por palabra en lugar de línea por línea.
A continuación se muestra una muestra del resultado de git diff --color-words
:
Ya has preparado los cambios (presumiblemente ejecutando git add
), por lo que para obtener su diferencia, necesitas ejecutar:
git diff --cached
(Un plano git diff
solo mostrará cambios no realizados).
Por ejemplo:
Para mí lo único que funcionó fue
git diff HEAD
incluidos los archivos preparados, git diff --cached
solo muestra archivos preparados.
Ciertamente no es la forma correcta de mostrar archivos no confirmados, pero funciona:
git switch <current-branch>
Producción: