Eliminar un archivo del último commit

GitGitBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

Git es un sistema de control de versiones poderoso que permite a los desarrolladores rastrear los cambios en su repositorio de código. Una de las tareas comunes en Git es eliminar un archivo del último commit. Esto puede ser útil cuando accidentalmente agregaste un archivo al último commit que no pretendías incluir.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/BasicOperationsGroup(["Basic Operations"]) git/BasicOperationsGroup -.-> git/commit("Create Commit") subgraph Lab Skills git/commit -.-> lab-12750{{"Eliminar un archivo del último commit"}} end

Eliminar un archivo del último commit

Has agregado un archivo al último commit que no pretendías incluir. Quieres eliminar el archivo del último commit sin cambiar su mensaje.

Para esta práctica, vamos a usar el repositorio de https://github.com/labex-labs/git-playground. Supongamos que tienes un repositorio de Git llamado git-playground con un archivo llamado file2.txt que accidentalmente agregaste al último commit. Estos son los pasos para eliminar el archivo del último commit:

  1. Clona el repositorio, navega hasta el directorio y configura la identidad:
git clone https://github.com/labex-labs/git-playground
cd git-playground
git config --global user.name "tu-nombre-de-usuario"
git config --global user.email "tu-correo-electrónico"
  1. Utiliza git rm --cached <archivo> para eliminar el <archivo> especificado del índice:
git rm --cached file2.txt
  1. Utiliza git commit --amend para actualizar el contenido del último commit, sin cambiar su mensaje:
git commit --amend --allow-empty

Si el commit es un commit vacío después de eliminar el archivo, utiliza --allow-empty, de lo contrario, puedes omitirlo.

Después de ejecutar estos comandos, el archivo file2.txt se eliminará del último commit sin cambiar su mensaje.

Esto es lo que sucede cuando eliminas file2.txt del control de versiones de Git:

On branch master

Changes to be committed:
(use "git restore --staged <file>..." to unstage)
deleted: file2.txt

Untracked files:
(use "git add <file>..." to include in what will be committed)
file2.txt

Resumen

Eliminar un archivo del último commit puede ser una habilidad útil al trabajar con Git. Al utilizar los comandos git rm --cached <archivo> y git commit --amend, puedes eliminar fácilmente un archivo del último commit sin cambiar su mensaje.