HOWTO · Git

Diferencia entre Git RM --Cached y Git Reset File

Este artículo analiza la diferencia entre los comandos git rm --cached y git reset file.

Este artículo analiza la diferencia entre los comandos git rm --cached y git reset<file>. Discutiremos la función de cada comando en un ajuste para captar las diferencias entre los dos.

Diferencia entre git rm --cached y git reset<archivo>

Para facilitar el contexto, exploraremos lo que puede lograr cada comando y luego analizaremos los diferentes resultados que muestran los dos comandos. Saltemos directamente.

el comando git rm --cached

A veces, Git puede darte la siguiente sugerencia después de ejecutar el comando git status.

$ git status
On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

	new file:   .env

Intentemos desorganizar el archivo .env usando la opción rm. Ejecutaremos lo siguiente:

$ git rm --cached .env

Ejecutemos el comando git status para verificar el estado de nuestro directorio de trabajo.

$ git status

Producción:

git rm –imagen en caché

Del resultado anterior, podemos ver que nuestro archivo .env se eliminó pero permanece en archivos sin seguimiento. Veamos qué hará el comando git reset<file>.

el comando git reset <archivo>

Ejecutaremos el comando git reset como se muestra a continuación:

$ git reset HEAD .env

Ahora podemos ejecutar el comando git status para verificar nuestro árbol de trabajo.

$ git status

Producción:

git reset imagen

Del resultado anterior, podemos ver que el comando git reset <archivo> ha eliminado las modificaciones realizadas en el archivo.

El comando git rm --cached prepara un archivo para su eliminación, pero mantiene el archivo sin seguimiento. Por otro lado, el comando git reset <archivo> solo eliminará un archivo.

La opción git rm --cached es ideal cuando desea eliminar un archivo sin seguimiento sin modificar el árbol de trabajo. El comando homólogo, git reset <file> restablecerá el índice y no el árbol de trabajo.

En pocas palabras, el comando git rm --cached eliminará las rutas en el índice y las dejará sin seguimiento, mientras que el comando git rest<file> restablecerá solo el índice. Use el comando git rm --cached con archivos sin seguimiento.