GNU/Linux >> Tutoriales Linux >  >> Linux

git gc:no queda espacio en el dispositivo, aunque hay 3 GB disponibles y tmp_pack solo 16 MB

Esto es lo que descubrí hasta ahora:no pude encontrar ninguna documentación sobre estos '.tmp-XXXX-pack' ocultos en el .git/objects/pack carpeta. Todos los demás hilos que puedo encontrar son sobre no ocultos archivos con tmp_ prefijo en la misma carpeta. Los ocultos también se crean claramente durante la acción de reempaquetar y es posible que estos también se atasquen. No puedo confirmar si eso todavía es posible en git 2.3.0 (que actualicé desde entonces), pero al menos el requisito de espacio en disco no parece haber cambiado en esta versión más nueva; todavía no puede completar gc /reempacar. Al eliminar estos archivos .tmp, pude recuperar mis últimos 4 GB y git aún parece comportarse bien después; sin embargo, sus resultados pueden variar, así que asegúrese de tener una copia de seguridad antes de hacer esto . Finalmente, incluso 4 GB no fueron suficientes para volver a empaquetar con gc --agressive . Mi .git la carpeta es de 1,1 GB después de la limpieza, todo mi repositorio es de 1,7 GB. Entonces, el doble del tamaño de su repositorio posiblemente no sea suficiente para git gc , incluso con la opción agresiva (que debería ahorrar espacio). Así que primero tuve que recuperar más espacio de otro lugar.

Finalmente, esto es lo que tengo ahora en mi secuencia de comandos de limpieza (que creo que podría ser una buena idea llamar desde un trabajo cron):

#!/bin/bash
set -e

#git gc or remove tmp if that fails (because out of disk space)
git gc --aggressive --prune=now || rm -f .git/objects/*/tmp_* && rm -f .git/objects/*/.tmp-*

Escenario similar (alrededor de 2,3 G disponibles), excepto git gc sí mismo también fallaría con fatal: Unable to create '/home/ubuntu/my-app-here/.git/gc.pid.lock': No space left on device

Lo que funcionó fue git prune primero, y luego ejecute el gc.


Linux
  1. Linux – Sudo:No se puede Mkdir /var/log/sudo-io/00/2a:¿No queda espacio en el dispositivo?

  2. ¿No queda espacio en el dispositivo aunque lo haya?

  3. “No queda espacio en el dispositivo”:problema de generación de kdump (CentOS/RHEL)

  4. Deshabilitar y volver a habilitar la aleatorización del diseño del espacio de direcciones solo para mí

  5. No se puede compilar con make | error fatal No queda espacio en el dispositivo

Linux:no queda espacio en el dispositivo mientras que el comando df muestra mucho espacio libre

No queda espacio en el dispositivo, pero la partición solo está llena hasta la mitad y los inodos están disponibles

AWS EC2 - No queda espacio en el dispositivo

¿Cómo compruebo cuánto espacio libre queda en un dispositivo para crear una partición?

¿Cómo corregir los errores intermitentes No queda espacio en el dispositivo durante mv cuando el dispositivo tiene mucho espacio?

¿Hay alguna otra razón por la que no quede espacio en el dispositivo?