repositorio que password hacer como and git git-commit git-filter-branch git-rewrite-history

que - El archivo de purga del repositorio de Git falló, no se pudo crear una nueva copia de seguridad



git push (4)

Agregue una fuerza al comando de rama de filtro.

Intenté eliminar un archivo de mi repositorio remoto ejecutando:

git filter-branch --index-filter ''git rm --cached --ignore-unmatch Rakefile'' HEAD

Pero Git se queja de que

No se puede crear una nueva copia de seguridad. Ya existe una copia de seguridad anterior en refs / original /
Fuerza sobrescribir la copia de seguridad con -f
rm: no se puede eliminar /.git-rewrite/backup-refs: Permiso denegado
rm: no se puede eliminar el directorio /.git-rewrite: Directorio no está vacío

Esto fue después de que ya eliminé el directorio .git-rewrite en Windows.

¿Cómo puedo eliminar ese archivo? Es un archivo de 29Mb en mi repositorio, así que necesito quitar el archivo.

Traté de eliminar la confirmación en git rebase -i , pero aparentemente porque la confirmación tocó muchos archivos diferentes, Git se queja de conflictos y aborté para estar a salvo.


Tuve el mismo problema y la respuesta anterior no lo solucionó. No quedaba el directorio .git / refs / original /. La solución para mí fue eliminar el archivo .git / packed-refs.



Usted ya ha realizado una operación de sucursal de filtro. Después de filter-branch, Git mantiene refs a los commit anteriores, en caso de que algo salga mal.

Puede encontrarlos en .git/refs/original/… Elimine ese directorio y todos los archivos dentro, o use el indicador -f para forzar a Git a eliminar las referencias antiguas.

git filter-branch -f / --index-filter ''git rm --cached --ignore-unmatch Rakefile'' HEAD