Purga de datos del repositorio
Aunque una de las ventajas de Git es su capacidad para contener historiales largos para repositorios de forma eficaz, en ocasiones es necesario purgar los datos.
Lo más habitual es hacerlo cuando quiere:
- Reducir considerablemente el tamaño de un repositorio mediante la eliminación del historial
- Quitar un archivo grande que se cargó accidentalmente
- Quitar un archivo confidencial que no debería haberse cargado
Si confirma datos confidenciales en Git (por ejemplo, una contraseña o una clave), se pueden quitar del historial. Normalmente se usan dos herramientas:
herramienta de repositorio de filtros de Git
El repositorio de filtros de Git es una herramienta para la reescritura del historial.
Su repositorio de filtros principal contiene una biblioteca para la creación de herramientas de reescritura del historial. Los usuarios con necesidades especializadas pueden crear rápidamente herramientas de reescritura del historial completamente nuevas.
Nota
Encontrará más detalles en el repositorio git-filter-repo.
BFG Repo-Cleaner
BFG Repo-Cleaner es una herramienta de código abierto que se usa habitualmente para eliminar o "corregir" contenido de repositorios. Es más fácil de usar que el comando filter-branch de Git. En el caso de un único archivo o conjunto de archivos, use la opción --delete-files:
$ bfg --delete-files file_I_should_not_have_committed
En el siguiente script de Bash se muestra cómo encontrar todos los lugares en los que existe un archivo denominado passwords.txt en el repositorio. Además, para reemplazar todo el texto que incluye, puede ejecutar la opción --replace-text:
$ bfg --replace-text passwords.txt
Para más información, consulte:
Reescritura rápida del historial del repositorio de Git.
Eliminación de archivos del almacenamiento de archivos grandes de Git.
Eliminación de datos confidenciales de un repositorio.