Cómo modificar la última confirmación en Git (mensaje, archivos, autor y deshacer)
Ya sea que detectó un error tipográfico en su mensaje de confirmación, olvidó preparar un archivo, cometió un secreto por error o utilizó el correo electrónico del autor incorrecto, git commit --amend reemplaza la confirmación de sugerencia limpiamente sin saturar su rama con confirmaciones de "corregir error tipográfico".
Escrito por Kodmora
La casa de software detrás de GitTree
- Commits
- Preparación
- Historial de commits
- Deshacer y recuperar
- Rebase
En esta página
Para corregir la confirmación más reciente en su rama actual, ejecute git commit --amend. Si no se prepara nada, Git reemplaza la confirmación con su mensaje actualizado; Si primero prepara nuevos cambios, Git incorpora esos cambios preparados en la confirmación y le permite mantener el mensaje existente con --no-edit o reescribirlo en su lugar. ¿Prefieres un flujo de trabajo visual? En GitTree en macOS, Windows y Linux, active Modificar confirmación anterior en el panel de confirmación (o haga clic con el botón derecho en la confirmación superior en el gráfico y elija Editar mensaje de confirmación...) para completar previamente el mensaje, preparar o cancelar líneas individuales, ver una advertencia de rama remota antes de reescribir el historial enviado y recuperar en cualquier momento con un solo clic Deshacer.
Referencia rápida: cada comando git commit --amend
Elija el comando exacto que coincida con lo que está mal en su última confirmación, o vaya a la sección detallada a continuación para ver casos extremos, ganchos, confirmaciones firmadas y alternativas visuales.
| lo que quieres arreglar | Comando para ejecutar | ¿Qué pasa con el commit? |
|---|---|---|
| Corregir un error tipográfico en el último mensaje de confirmación (en línea) | git commit --amend -m "New message" | Reemplaza HEAD con una nueva confirmación que contiene el nuevo mensaje y cualquier cambio actualmente preparado |
| Edite un mensaje de confirmación de varias líneas en su editor | git commit --amend | Abre su editor Git configurado con el asunto y el cuerpo existentes precargados |
| Reformule solo el mensaje (ignore los archivos preparados) | git commit --amend --only -m "New message" | Reescribe el mensaje de confirmación de HEAD mientras deja intacta su área de preparación actual para la próxima confirmación. |
| Añade un archivo olvidado y conserva el mismo mensaje | git add <file> && git commit --amend --no-edit | Pliega <file> en la última confirmación sin abrir el editor de texto |
| Agregue líneas o fragmentos específicos a la última confirmación | git add -p && git commit --amend --no-edit | Le permite organizar los fragmentos elegidos de forma interactiva y luego plegar solo esos fragmentos en HEAD |
| Doble todos los archivos rastreados modificados en la última confirmación | git commit -a --amend --no-edit | Organiza cada archivo con seguimiento modificado o eliminado y modifica HEAD en un solo paso (se ignoran los archivos sin seguimiento) |
| Eliminar un archivo cometido por error (mantener en el disco) | git restore --source=HEAD~1 --staged <file> && git commit --amend --no-edit | Revierte <file> en el índice a HEAD~1 manteniendo intacto el archivo del árbol de trabajo local. |
| Corrija el nombre del autor y el correo electrónico en la última confirmación. | git commit --amend --reset-author --no-edit | Actualiza el autor de la confirmación (y la marca de tiempo) para que coincida con su configuración actual de user.name y user.email |
| Actualizar una rama después de modificar una confirmación enviada | git push --force-with-lease --force-if-includes | Actualiza de forma segura la rama remota solo si ningún compañero de equipo ha enviado nuevas confirmaciones y su reflog local incluye la sugerencia remota |
Deshacer un git commit --amend accidental | git reset --soft HEAD@{1} | Mueve el puntero de la rama nuevamente a la confirmación previa a la modificación mientras mantiene preparados los cambios adicionales. |
Lo que realmente hace git commit --amend bajo el capó
Cada hash de confirmación de Git es una suma de verificación criptográfica (SHA-1 o SHA-256) calculada a partir de cinco datos: la instantánea del árbol raíz, los hash de confirmación principales, el nombre/correo electrónico/marca de tiempo del autor, el nombre/correo electrónico/marca de tiempo del committor y el mensaje de confirmación. Cambie incluso un solo carácter en el mensaje (o la marca de tiempo del confirmador un segundo después) y el hash resultante será completamente diferente.
# Before git commit --amend:
A --- B --- C <-- main (HEAD)
# After git commit --amend:
A --- B --- C' <-- main (HEAD)
\
C (still in git reflog as HEAD@{1} until garbage collection)Cuando ejecutas git commit --amend, Git toma lo que esté actualmente en el área de preparación (el índice), lo combina con los punteros principales de C (B), escribe un nuevo objeto de confirmación C' y actualiza tu referencia de rama actual para que apunte a C'. La confirmación original C no se elimina inmediatamente: permanece registrada en su registro local (HEAD@{1}) durante al menos 30 a 90 días (gc.reflogExpireUnreachable), razón por la cual una enmienda accidental siempre se puede recuperar localmente, ya sea a través de git reflog o mediante las herramientas Deshacer y rehacer y Objetos perdidos de GitTree.
1. Cambiar el último mensaje de confirmación.
Si acaba de cometerlo e inmediatamente notó un error tipográfico, un número de problema de Jira/GitHub incorrecto o un prefijo Conventional Commits faltante (feat:, fix:, chore:), verifique primero git status para saber si hay algo preparado.
Pase un nuevo mensaje de una línea o de varios párrafos con -m
Para reemplazar el mensaje directamente desde la terminal sin iniciar un editor, pase -m. Puede encadenar varios indicadores -m para crear una línea de asunto y párrafos de cuerpo:
# Replace the commit subject inline
git commit --amend -m "fix(auth): validate refresh token expiry before rotation"
# Replace both the subject line and body paragraph
git commit --amend \
-m "fix(auth): validate refresh token expiry before rotation" \
-m "Prevents expired tokens from issuing a new session when clock skew exceeds 30s."Edite el mensaje existente en su editor de texto
Cuando su confirmación ya tenga una descripción detallada de varias líneas, avances (Co-authored-by:, Signed-off-by:) o referencias de problemas que no desee volver a escribir, ejecute git commit --amend sin -m:
git commit --amendGit abre su core.editor configurado (Vim, Nano, VS Code, Zed, etc.) con el mensaje de confirmación actual precargado. Guarde y cierre el archivo para escribir la confirmación modificada. Si cambia de opinión mientras el editor está abierto, elimine todo el mensaje de confirmación (dejando el archivo vacío) y guárdelo: Git cancela la modificación con Aborting commit due to empty commit message y deja HEAD intacto.
2. Agregue archivos olvidados o líneas específicas a la última confirmación.
Olvidarse de guardar un archivo, preparar un dispositivo de prueba o ejecutar el formateador antes de confirmar es la razón más común por la que los desarrolladores recurren a --amend. Prepare primero los cambios que faltan y luego modifíquelos con --no-edit para que Git mantenga el mensaje de confirmación existente sin abrir un editor:
# Stage the forgotten file (or files)
git add src/auth/token-validator.test.ts
# Fold the staged file into the last commit and keep the existing message
git commit --amend --no-editPrepare solo líneas o fragmentos específicos antes de realizar modificaciones
¿Qué pasa si su árbol de trabajo contiene la corrección de 3 líneas que pertenece a la confirmación anterior *y* 40 líneas de registro de depuración o trabajo para su próxima característica? No ejecute git add . o git commit -a --amend. En su lugar, prepare solo los fragmentos o líneas exactos que pertenecen a la confirmación anterior usando el modo parche (que se explica en detalle en nuestra guía para git add -p y preparación de líneas específicas):
# Choose y/n/s (split) for each changed hunk
git add -p src/auth/token-validator.ts
# Verify what is staged vs what stays in the working tree
git diff --staged
# Amend the last commit with only the staged hunks
git commit --amend --no-editEn GitTree, nunca tendrá que luchar con la división del fragmento de terminal (s, e) para hacer esto: haga clic en cualquier archivo en Cambios sin etapas, seleccione las líneas exactas o haga clic en Stage Hunk en la diferencia en línea o en paralelo, y active Modificar confirmación anterior. Consulte nuestra Guía de diferencias de Git para ver cómo la inspección de las diferencias preparadas y no preparadas evita que el código accidental se deslice en una confirmación modificada.

3. Eliminar un archivo cometido por error (sin eliminarlo del disco)
Supongamos que ejecutó git add . y confirmó accidentalmente un archivo .env.local, un artefacto de compilación grande o un archivo que pertenece a una solicitud de extracción separada. La forma de eliminarlo de HEAD depende de si el archivo existía en la confirmación antes de HEAD (HEAD~1) o se agregó recientemente en HEAD.
Caso A: eliminar un archivo recién agregado de la última confirmación (conservar el archivo local)
Utilice git rm --cached para eliminar el archivo del índice provisional mientras deja el archivo físico en su disco, luego modifique:
# Remove the file from the index only (leaves the file on disk)
git rm --cached .env.local
# Optional: add it to .gitignore so it never gets staged again
echo ".env.local" >> .gitignore
git add .gitignore
# Rewrite the last commit without .env.local
git commit --amend --no-editCaso B: revertir las ediciones de un archivo rastreado en la última confirmación (mantener las ediciones locales)
Si <file> ya fue rastreado en HEAD~1 y accidentalmente incluiste ediciones en HEAD, no uses git rm --cached (¡eso registraría la eliminación de un archivo en HEAD!). En su lugar, restaure la entrada de índice para ese archivo desde HEAD~1:
# Reset only the staged index state of <file> back to HEAD~1
git restore --source=HEAD~1 --staged src/config/database.ts
# Amend HEAD: the commit no longer touches database.ts, and your local edits stay in the working tree
git commit --amend --no-editSi, en cambio, desea descartar ediciones locales no deseadas o limpiar completamente los archivos sin seguimiento, consulte cómo descartar cambios y limpiar archivos sin seguimiento en Git y cómo restaurar un archivo eliminado en Git.
4. Cambie el autor, el correo electrónico o la marca de tiempo de la última confirmación.
Cuando realiza una confirmación en una computadora portátil nueva antes de configurar user.email, o realiza una confirmación dentro de un repositorio de trabajo mientras su correo electrónico personal GitHub está configurado globalmente, la confirmación registra la identidad incorrecta. git commit --amend puede reescribir los metadatos de la confirmación sin tocar un solo archivo.
# Option 1: Set an explicit author name and email on the last commit
git commit --amend --author="Jane Doe <jane@company.com>" --no-edit
# Option 2: Update git config first, then reset the commit author to match
git config user.name "Jane Doe"
git config user.email "jane@company.com"
git commit --amend --reset-author --no-edit
# Option 3: Amend the author date as well
git commit --amend --date="2026-11-11T14:30:00+02:00" --no-edit5. Cómo modificar de forma segura una confirmación que ya impulsó
Tan pronto como modifica una confirmación que ya se envió a origin, su rama local y la rama de seguimiento remoto (origin/<branch>) divergen: su rama local tiene C', mientras que origin todavía tiene C. Ambas confirmaciones comparten el padre B.
Si la rama es tu propia característica o rama de solicitud de extracción, actualiza el remoto de forma segura con --force-with-lease (y --force-if-includes en Git 2.30+):
# Safely replace the remote branch tip with your amended commit
git push --force-with-lease --force-if-includes origin HEAD- Por qué `--force-with-lease` en lugar de `--force`:
git push --forcesimple sobrescribe ciegamente la rama remota, borrando cualquier confirmación que un compañero de equipo o un bot de CI haya enviado desde su última recuperación.--force-with-leasecomprueba queorigin/<branch>todavía apunte al SHA de confirmación exacto almacenado en su referencia de seguimiento remoto local; Mientras tanto, si alguien más presiona, Git rechaza el impulso en lugar de perder su trabajo. - Qué agrega `--force-if-includes`: Si tiene habilitada la búsqueda automática en segundo plano, su referencia de seguimiento remoto podría actualizarse antes de enviar.
--force-if-includesverifica que la confirmación en la punta de la rama remota se integró realmente en su reflog local antes de permitir la reescritura. - Cuando estés en `main` o en una rama compartida: No modifiques ni fuerces el envío de una rama compartida en la que otros desarrolladores basan su trabajo. En su lugar, deje la confirmación intacta y envíe una nueva confirmación de corrección, o inviértala limpiamente con
git revert(consulte nuestra guía para revertir confirmaciones y fusiones y el tutorial de recuperación de errores enviados). - ¿Necesitas configurar tu rama de seguimiento primero? Consulta cómo configurar una rama ascendente en Git.
6. ¿Qué pasa si la confirmación que necesitas modificar NO es la última confirmación?
git commit --amend solo reescribe HEAD (la confirmación de sugerencia). Cuando el error tipográfico o el cambio faltante pertenece a HEAD~2 o tres confirmaciones anteriores, tienes dos opciones limpias, sin guardar ni seleccionar manualmente:
Opción 1: Autoquash CLI rápido con git commit --fixup
Prepare la solución, cree una confirmación --fixup dirigida al SHA de la confirmación anterior (o --fixup=amend:<sha> para editar también su mensaje) y ejecute git rebase -i --autosquash:
# 1. Stage the changes meant for the older commit (e.g. a1b2c3d)
git add src/api/client.ts
# 2. Create a fixup commit targeting a1b2c3d
git commit --fixup=a1b2c3d
# 3. Autosquash the fixup commit straight into a1b2c3d
GIT_SEQUENCE_EDITOR=: git rebase -i --autosquash a1b2c3d~1Opción 2: Rebase interactivo visual en GitTree
En lugar de copiar SHA y editar archivos de tareas pendientes de rebase en la terminal, lea nuestra guía GUI de rebase interactiva y guía de rebase de ramas completas. En el planificador Rebase interactivo y Reescribir, aplastar y soltar de GitTree, haga clic con el botón derecho en cualquier confirmación anterior en el gráfico, elija Rebase interactiva desde aquí..., cambie esa confirmación a Reescribir o arrastre una confirmación de corrección a Fixup/Squash y aplíquela con un solo clic.

7. Cómo deshacer una confirmación accidental de git --amend
¿Ejecutó git commit --amend mientras se preparaban archivos no deseados o sobrescribió accidentalmente un mensaje de confirmación que necesitaba? Debido a que Git registra cada movimiento de HEAD en el registro local, su confirmación previa a la modificación todavía se encuentra segura en HEAD@{1}.
# 1. Inspect the reflog to see the amend and the commit before it
git reflog -n 5
# e9f8d7c (HEAD -> feature) HEAD@{0}: commit (amend): feat: add billing webhook
# 4a3b2c1 HEAD@{1}: commit: feat: add billing webhook
# 2. Restore the branch to the pre-amend commit and keep any extra changes staged
git reset --soft HEAD@{1}El uso de git reset --soft HEAD@{1} coloca el puntero de rama nuevamente en la confirmación original (4a3b2c1) y deja la diferencia entre la confirmación modificada y la confirmación original preparada en su índice; no se pierde nada en su árbol de trabajo. Para profundizar en los restablecimientos de soft, mixed y hard y la recuperación de reflog, lea Git reset --soft vs --mixed vs --hard, cómo deshacer git reset, rebase o commit con reflog y cómo recuperar escondites caídos y confirmaciones pendientes.
Cuándo usar git commit --amend vs reset, revertir o rebase -i
Utilice esta matriz de decisión siempre que necesite arreglar el historial para elegir el comando que coincida con la posición de su commit y si sus compañeros de equipo lo han ejecutado:
| Comando | commit objetivo | ¿Reescribe SHA? | Mejor usado cuando |
|---|---|---|---|
git commit --amend | Solo la última confirmación (HEAD) | si | Quiere reformular el último mensaje de confirmación, incorporar cambios preparados olvidados o corregir los metadatos del autor en una rama local o personal. |
git reset --soft HEAD~1 | Última confirmación (HEAD) | si | Desea cancelar la confirmación de HEAD por completo y, al mismo tiempo, mantener todos sus cambios preparados para poder dividirlos en dos o más confirmaciones separadas. |
git rebase -i <base> | Cualquier commit en el rango | si | Debe editar, reformular, aplastar, arreglar, reordenar o eliminar una confirmación anterior a HEAD antes de fusionar su PR |
git revert <sha> | Cualquier confirmación (HEAD o anterior) | No (agrega un nuevo commit) | La confirmación ya está en main o en una rama compartida donde el push forzado está bloqueado o perturbaría a los compañeros de equipo. |
Cómo modificar el último commit en GitTree (paso a paso)
Abra Cambios e inspeccione su diferencia en escena
En GitTree en macOS, Windows y Linux, abre Cambios en la barra lateral. Si solo desea editar el mensaje de la última confirmación, deje Cambios por etapas vacío; Si desea plegar un archivo olvidado o líneas específicas, coloque solo esos archivos, fragmentos o líneas en la diferenciación de lado a lado.
Activar Modificar confirmación anterior (1)
Active Modificar confirmación anterior encima del cuadro de mensaje de confirmación (o presione
Cmd+Shift+Men macOS /Ctrl+Shift+Men Windows y Linux). GitTree completa previamente el resumen y la descripción deHEADcuando el cuadro de mensaje está vacío, y siHEADya se envió a su remoto, GitTree muestra un banner de advertencia explícito antes de reescribir el historial.Refina el mensaje (o borrador con IA) y haz clic en Modificar Confirmar (2)
Edite el asunto o el cuerpo, o haga clic en el botón brillante en GitTree Pro para permitir que Nour y su propio agente de codificación CLI (Claude Code, Codex, or Gemini CLI) redacten un mensaje de confirmación actualizado a partir de la diferencia completa modificada; luego haga clic en Modificar confirmación.
Deshacer con un clic o enviar de forma segura con Force Push (Con arrendamiento)
¿Cambiaste de opinión? Haga clic en Deshacer en la barra de herramientas superior (
Cmd+Z/Ctrl+Z) para restaurar la confirmación previa a la modificación original a partir de la instantánea de seguridadrefs/ogt/trashde GitTree, o inspeccione la confirmación anterior en cualquier momento en Objetos perdidos. Si la confirmación ya estaba en su rama de función remota, use Forzar envío (con arrendamiento)… en la barra de herramientas.


Cómo GitTree elimina todos los errores comunes de git commit --amend
La mayoría de los accidentes de modificación de la línea de comandos ocurren porque la terminal oculta tres piezas críticas de contexto hasta que es demasiado tarde: lo que ya está en su área de preparación, si HEAD ya se ha enviado a origin y cuál era el SHA de confirmación anterior antes de sobrescribirlo. GitTree resuelve cada uno de esos modos de falla directamente en la interfaz:
- Inspección de diferencias en vivo por etapas y sin etapas: Antes de hacer clic en Modificar confirmación, la lista de Cambios por etapas se encuentra directamente encima del cuadro de confirmación para que nunca puedas doblar accidentalmente archivos a medio terminar en
HEAD. Puede preparar o cancelar la preparación de líneas, fragmentos o archivos individuales con un solo clic (Preparar archivos, fragmentos y líneas). - Detección de confirmación push y protección Force-Push-With-Lease: Cuando
HEADya está en la rama remota, GitTree te advierte justo dentro del panel de confirmación *antes* de modificar y empareja el flujo de trabajo con Force Push (With Lease)… para que nunca sobrescribas la push de un compañero de equipo. - Reformulación con clic derecho y creación rápida de `fixup!`/`amend!`: ¿Quieres reformular
HEADsin tocar tus archivos preparados? Haga clic derecho en la confirmación superior en el gráfico de confirmación y elija Editar mensaje de confirmación…. ¿Necesitas arreglar una confirmación anterior? Haga clic con el botón derecho en esa confirmación anterior en el gráfico para crear una confirmaciónfixup!oamend!o abra Rebase interactiva. - Instantáneas de seguridad automáticas (`refs/ogt/trash`) y deshacer con un clic: Antes de ejecutar cualquiera de las 19 operaciones de cambio del historial, incluida Modificar una confirmación, rebase interactivo, restablecer, eliminar rama y descartar, GitTree registra una instantánea local en
refs/ogt/trash. Al hacer clic en Deshacer (Cmd+Z/Ctrl+Z) se restaura inmediatamente el estado de preparación y confirmación previo a la modificación exacto. - Terminal integrado y de objetos perdidos visuales: Incluso si modificó desde el terminal integrado o hace semanas, Lost & Found muestra confirmaciones inalcanzables y reemplazadas con sus diferencias completas para que pueda restaurarlas, seleccionarlas o bifurcarlas sin analizar la salida
git reflogsin procesar. - Ganchos de Git, advertencias secretas y mensajes de confirmación de IA: GitTree ejecuta los
pre-commity loscommit-msgganchos de Git de tu repositorio, verifica las diferencias preparadas para detectar claves API accidentales y (en GitTree Pro) permite que Nour genere mensajes de confirmación precisos usando tu propio agente de codificación local.




Preguntas frecuentes
¿Git commit --amend cambia el hash SHA de confirmación?
Sí. Las confirmaciones de Git son inmutables, por lo que git commit --amend crea un objeto de confirmación completamente nuevo con un nuevo hash SHA-1 (o SHA-256) que comparte el mismo padre que la confirmación que reemplaza y luego mueve el puntero de rama a la nueva confirmación. La confirmación reemplazada permanece en su git reflog (HEAD@{1}) local hasta que la recolección de basura de Git expire los objetos inalcanzables.
¿Cómo modifico la última confirmación sin cambiar su mensaje de confirmación?
Organiza tus cambios adicionales con git add <file> (o git add -p) y luego ejecuta git commit --amend --no-edit. La bandera --no-edit le dice a Git que reutilice el mensaje de confirmación existente de HEAD sin abrir su editor de texto. En GitTree, al activar Modificar confirmación anterior se completa automáticamente el resumen y la descripción de la confirmación anterior para que pueda hacer clic en Modificar confirmación inmediatamente.
¿Cómo cambio solo el último mensaje de confirmación cuando ya tengo otros archivos preparados?
Ejecute git commit --amend --only -m "New commit message" (o git commit --amend -o). La bandera --only le indica a Git que modifique HEAD usando solo el árbol de archivos ya registrado en HEAD, dejando los archivos preparados actualmente intactos en el índice para su próxima confirmación. En GitTree, también puede hacer clic con el botón derecho en la confirmación superior del gráfico y elegir Editar mensaje de confirmación....
¿Puedo modificar una confirmación después de haberla enviado a GitHub, GitLab o Bitbucket?
Sí, si es su propia rama de funciones: modifique la confirmación localmente y luego ejecute git push --force-with-lease --force-if-includes (o use Force Push (With Lease)… en GitTree) para que Git actualice la rama remota solo si nadie más ha enviado nuevas confirmaciones. No ejecute git pull después de modificar una confirmación enviada y evite modificar confirmaciones en ramas compartidas como main; use git revert allí en su lugar.
¿Cómo elimino un archivo de la última confirmación sin eliminarlo de mi computadora?
Si el archivo se agregó recientemente en la última confirmación, ejecute git rm --cached <file> seguido de git commit --amend --no-edit. Si el archivo ya existía en HEAD~1 y solo desea eliminar las ediciones realizadas en HEAD, ejecute git restore --source=HEAD~1 --staged <file> y luego git commit --amend --no-edit. Ambos comandos mantienen intacto su archivo local en el árbol de trabajo.
¿Cómo deshago un git commit --amend si cometí un error?
Ejecute git reset --soft HEAD@{1} en la terminal. Eso mueve el puntero de la rama de regreso a la confirmación exacta HEAD señalada justo antes de la modificación, mientras se mantienen preparados los cambios recién agregados. En GitTree, simplemente haga clic en Deshacer en la barra de herramientas (Cmd+Z en macOS o Ctrl+Z en Windows y Linux) o abra Objetos perdidos para restaurar la confirmación previa a la enmienda.
¿Git commit --amend ejecuta enlaces pre-commit y commit-msg o conserva firmas GPG/SSH?
Sí: git commit --amend activa los ganchos pre-commit y commit-msg como una confirmación normal (pase --no-verify/-n para omitirlos cuando sea necesario). Debido a que la modificación crea un nuevo objeto de confirmación, se reemplaza cualquier firma GPG o SSH en la confirmación original; si tiene commit.gpgsign habilitado en Git o en GitTree Preferencias › Firma de confirmación, Git vuelve a firmar automáticamente la confirmación modificada.
¿Cómo modifico una confirmación que tiene dos o tres confirmaciones en el historial?
git commit --amend solo edita HEAD. Para modificar una confirmación anterior desde la CLI, prepare su solución, ejecute git commit --fixup=<sha> (o --fixup=amend:<sha>) y ejecute git rebase -i --autosquash <sha>~1. En GitTree, haga clic con el botón derecho en la confirmación anterior en el gráfico de confirmación y elija Rebase interactiva desde aquí... para reformularla, editarla o aplastarla visualmente.
Fuentes
Las afirmaciones sobre otros productos se compararon con sus páginas oficiales el 11 de noviembre de 2026. Los precios y las características cambian; Las páginas de los proveedores son la fuente de la verdad.
- Documentación de Git: git-commit (--amend, --no-edit, --only, --reset-author)
- Pro Git Book - 7.6 Herramientas Git: reescribir el historial (cambiar la última confirmación)
- Documentación de Git: git-push (--force-with-lease y --force-if-includes)
- Documentación de Git: git-restore (--source y --staged)
- Documentación de Git: git-reflog (recuperación de confirmaciones previas a la modificación)