Mi archivo .git ha crecido a 229Mb y me pregunto cuál es la mejor manera de reducir el tamaño. Sé sobre git gc y lo he estado usando bastante. No estoy totalmente seguro de cómo funciona Git, pero sé que hay información empaquetada allí que ya no necesito. Al igual, sé que ya no necesito las primeras cinco ramas guardadas. ¿Hay alguna forma de borrar por completo las ramas o compromisos realmente antiguos o algo así?Administrar tamaño del archivo .git
Respuesta
Si desea mantener su (accesible) comprometerse historia intacta, entonces caduca, vuelva a embalar, ciruela, y limpieza de la memoria:
git reflog expire --expire=0 --all
git repack -ad
git prune
git gc
Este debería ser el tamaño mínimo que puede conseguir su cesión temporal y mantenga su historia comprometerse.
Si no, es decir, si desea o no le molesta comenzar de nuevo con el estado actual del repositorio como el compromiso inicial, entonces el enfoque de Peter Tillemans lo hará.
Lo más fácil sería hacer un
git clone --depth 1 your_old_repo
en una nueva ubicación y luego cambiar de nuevo en su lugar.
ver también git faq
La clonación superficial tiene una funcionalidad limitada, desafortunadamente. –
Tiene algunas técnicas en "Reduce git repository size", pero menciono también en ella que git gc
alone can increase the size of the repo!
Así que alguna rama filtro (también se hace referencia en that question) puede ser necesaria, si nadie está tirando activamente desde su repositorio.
Un factor que tiende a aumentar rápidamente el tamaño de un repositorio de Git es la versión de muchos binarios. Es uno de Git limits, así que trate de:
- versión tal objeto grande en su propio repo Git, referenciado como submódulos
- o versión ellos en un repositorio externo envíos, como un repositorio Maven (es decir " no en un repositorio de Git ")
- 1. Limitar el tamaño del archivo en el repositorio de git
- 2. Administrar el crecimiento del archivo .LDF de SQL Server
- 3. gitignore por tamaño de archivo?
- 4. Tamaño del archivo cargado
- 5. Reducir el tamaño del repositorio git
- 6. tamaño del archivo en Haskell
- 7. Git: Administrar cada versión de mi aplicación?
- 8. Administrar una rama de versión en Git
- 9. git - eliminar archivo del repositorio
- 10. Determinación del tamaño del archivo en VB.NET
- 11. Cómo puedo administrar el tamaño de registro de SQL Server
- 12. Repositorio de Heroku Git Tamaño
- 13. ¿Cómo optimizar el tamaño del archivo PDF?
- 14. tamaño del archivo de shell de linux
- 15. NSFileManager - Comprobar el tamaño del archivo?
- 16. Reducir el tamaño del archivo de pdf
- 17. PHP include(): Tamaño y rendimiento del archivo
- 18. Reducir el tamaño del archivo jar externo
- 19. modificador de Smarty tamaño del archivo
- 20. Ace Editor ace.js Tamaño del archivo
- 21. Cómo representar visualmente el tamaño del archivo
- 22. MVC3 Acción Tamaño del archivo de límite
- 23. Cómo obtener el tamaño del archivo HttpPostedFileBase
- 24. ¿Cómo ver el tamaño del archivo antes de comprometerme con git?
- 25. Git usando subárbol o submódulo para administrar recursos externos
- 26. Administrar fuente bajo git y svn simultáneamente - ¿tiene sentido?
- 27. Buscar tamaño de git repo
- 28. Tamaño máximo de archivo y tamaño máximo de repositorio en Git?
- 29. Reducción del tamaño del archivo PNG en .NET
- 30. ¿Cómo cambiar el tamaño del botón del archivo de entrada?
Esto parece un buen enfoque, ¡gracias! – DavidP6
'git gc' ejecuta automáticamente' git prune', como se menciona en esta página de documentación, en el ejemplo: https://www.kernel.org/pub/software/scm/git/docs/git-prune.html – kontur