Me enfrento a un problema muy extraño al que nunca me había enfrentado en el pasado.
Moví muchas imágenes, files PDF y otros documentos a mi repository git del proyecto, el tamaño del repository se aumentó a 290 MB
Más tarde se dio count y movió todas esas cosas a un server amazon s3 y las eliminó del repository ya que no necesito mantener allí las versiones.
Ahora mi tamaño de base de código ha disminuido a 8 MB. Continué mi trabajo con la base de código haciendo nuevos commits.
Recientemente quiero moverlos a un nuevo server. Ahora me di count de que el tamaño de mi repository cuando recién clono es de más de 230 MB.
Después del clon Si reviso la carpeta .git, su tamaño fue de 200 MB.
Esto muestra claramente que eliminé esas imágenes hace mucho time y me comprometí con el repository, pero sigue ahí en la historia.
¿Cómo puedo resolver este problema?
El problema es cómo eliminar cosas que no necesitamos permanentemente del repository de git. Como en mi caso, ya he hecho muchos cambios en la base de código después de eliminar esas cosas binarias, pero aún así las cosas existen en la historia.
Puede ser que podría haber hecho
git rm *.something && git rm --cached filenames
Pero simplemente los borré manualmente del repository e hice un commit de git y lo llevé al repository remoto, lo cual fue un error. ¿Cómo puedo resolver este extraño problema? .
¿Hay alguna manera de networkingucir el tamaño de mi carpeta .git?
Por favor recomiende ,
Gracias por adelantado
Esto funcionó para mí
git filter-branch --index-filter "git rm -rf --cached --ignore-unmatch folder/" HEAD
Para limpiar mi memory caching repo local
rm -rf .git/refs/original/ && git reflog expire --all && git gc --aggressive --prune
Después de hacerlo, su twig local se separará. SI ejecuta el estado de git, muestra que se está quedando atrás desde el origen.
Así que solo toma un git pull para fusionarte desde el control remoto y haz un push para que el tamaño del repository se networkinguzca.
Referencias:
Borrar files históricos / carpetas del repository de git
La publicación SO
Elimina por completo los files del repository de Git y a distancia en GitHub
Me ayudó a get este enlace. El título de la pregunta me indujo a error al principio. Por lo tanto, estoy publicando la solución, ya que este escenario es poco específico y podría ayudar a otros que enfrentan el mismo problema.
Utilizar:
git gc --agressive
Para limpiar files viejos en su repository.