Reiniciar Repositorio en GIT / GITHUB
Introducción
Este documento proporciona una guía paso a paso sobre cómo reiniciar un repositorio en GIT y GITHUB. Reiniciar un repositorio puede ser útil en diversas situaciones, como cuando se desea comenzar de nuevo con un proyecto o cuando se han realizado cambios que no se desean conservar. A continuación, se presentan los métodos más comunes para reiniciar un repositorio.
- Cuando se desea comenzar de nuevo con un proyecto desde un estado limpio.
- Si se han realizado cambios que no se quieren conservar.
- Para eliminar el historial de commits y reiniciar el repositorio con un nuevo historial.
- En caso de querer restablecer una rama a un estado anterior sin conservar modificaciones recientes.

Reiniciar Eliminando Todo el Historial Manteniendo los Archivos
Para reiniciar un repositorio de Git y GitHub desde cero, es necesario eliminar el historial de commits y volver a subir los archivos, asegurando que estos permanezcan sin ningún cambio. A continuación, se detallan los pasos para hacerlo de manera segura.
Eliminar el Historial de Git Localmente
Si se desea eliminar todo el historial de commits y comenzar desde cero manteniendo los archivos, se deben seguir estos pasos en la terminal dentro del directorio del repositorio:
- Abrir el terminal o línea de comandos.
- Navegar hasta el directorio del repositorio local.
- Ejecutar el siguiente comando:
rm -rf .git
Volver a Inicializar Git
Con el siguiente comando se inicializa de cero el repositorio.
git init
Volver a Conectar con GitHub
Si el repositorio está vinculado con GitHub, se debe volver a agregar la URL remota:
git remote add origin https://github.com/usuario/nombre-del-repo.git
La dirección del repositorio está disponible en GitHub y se puede encontrar como se muestra en la siguiente imagen.

Crear un Commit Vacío (Opcional)
Este paso es opcional. Si se desea crear un commit vacío, es decir, sin incluir ningún archivo, usar el siguiente código:
git commit --allow-empty -m "Commit vacío inicial"
Este paso se usa para definir un punto de inicio y se puede usar para:
- Permite establecer una referencia en el historial del proyecto antes de realizar cambios.
- Puede utilizarse para señalar el comienzo de una nueva fase del proyecto.
En este punto hacer los cambios necesarios en archivo(s) necesario(s)
Agregar los Archivos y Hacer un Nuevo Commit
Después de reiniciar Git, hay que añadir los archivos nuevamente al nuevo historial y hacer un primer commit:
git add .
git commit -m "1ro del repositorio
Forzar la Subida del Nuevo Historial a GitHub
Para reemplazar completamente el historial anterior en GitHub, se debe forzar el push con la opción --force
:
git push --force origin main
Si el repositorio usa otra rama predeterminada, como master
, reemplazar main
por master
.
Verificar que el Repositorio ha Sido Reiniciado
Ir a GitHub y comprobar que el historial de commits se ha reiniciado y solo aparece el nuevo commit.
Recopilación de comandos utilizados
Esta es una recopilación de los comandos para eliminar todo el historial de un repositorio GIT, manteniendo los archivos y creando un commit que marque el nuevo inicio antes de volver a subirlos a GitHub.
rm -rf .git
git init
git remote add origin https://github.com/usuario/nombre-del-repo.git
git commit --allow-empty -m "Commit vacío inicial"
// Cambios archivos en el repo local.
git add .
git commit -m "1ro del repositorio"
git push --force origin main
Recopilación de comandos para eliminar todo el historial de un repositorio Git, conservar los archivos y subirlos nuevamente a GitHub:
rm -rf .git
git init
git remote add origin https://github.com/usuario/nombre-del-repo.git
git add .
git commit -m "1ro del repositorio"
git push --force origin main
Notas Importantes
- Este proceso elimina permanentemente el historial de cambios anteriores. Si se desea conservar una copia, es recomendable hacer un backup antes de ejecutar los comandos.
- Si hay otros colaboradores en el repositorio, ellos tendrán problemas al sincronizarse después de un
git push --force
, por lo que deben clonar nuevamente el repositorio después del reinicio.
Este método permite reiniciar un repositorio en Git y GitHub desde cero, eliminando todo el historial anterior y dejando solo el estado actual del código.