Estoy tratando de hacer un git pull y aparece el siguiente error:
Error al desvincular el archivo 'lib / xxx.jar'. ¿Debería intentarlo de nuevo? (s / n)
No importa si selecciono yn, no es posible llegar a un estado en el que pueda tirar o empujar.
chmod
y / ochown
en dicho archivo.Respuestas:
Eso generalmente significa que un proceso todavía está usando ese archivo específico (todavía tiene un identificador)
(en Windows,
ProcessExplorer
es bueno para rastrear ese tipo de proceso)Intente cerrar sus otros programas e intente nuevamente su
git pull
.Tenga en cuenta que tiene una alternativa con la
GIT_ASK_YESNO
variable .Actualización de enero de 2019:
Eso debería solucionarse aún más, con Git 2.21 (Q1 2019), ya que "
git gc
" y "git repack
" no cerraron los archivos abiertos que encontraron innecesarios antes de eliminarlos, que no funcionaban en una plataforma incapaz de eliminar un archivo abierto.Esto ha sido corregido.
Ver commit 5bdece0 (15 dic 2018) por Johannes Schindelin (
dscho
) .(Fusionada por Junio C Hamano -
gitster
- en commit 5104f8f , 18 ene 2019)Actualización enero 2016
Eso debería arreglarse en Git 2.8 (marzo de 2016) (y ver Git 2.19, Q3 2018 a continuación)
Ver commit d562102 , commit dcacb1b , commit df617b5 , commit 0898c96 (13 de enero de 2016) por Johannes Schindelin (
dscho
) .(Fusionada por Junio C Hamano -
gitster
- en commit 3c80940 , 26 de enero de 2016)Eso soluciona el
git-for-widows
problema 500 .Mirando la prueba utilizada para validar ese nuevo enfoque , una posible solución (ya que Git 2.8 aún no está disponible) sería plantear artificialmente
gc.autoPackLimit
.git 2.8.4 (junio de 2016) menciona el problema 755 que también debería aliviar el problema ( commit 2db0641 ):
En realidad, el
git-for-windows
problema 500 mencionado anteriormente está realmente solucionado con Git 2.19, Q3 2018.Consulte " Git: desvinculación del archivo
.idx
y.pack
falló (el único identificador de propiedad del proceso para este archivo esgit.exe
) "fuente
Esta es una respuesta específica de Windows, por lo que sé que no es relevante para usted ... Solo la incluyo para el beneficio de los futuros buscadores.
En mi caso, fue porque estaba ejecutando Git desde una línea de comando no elevada. "Ejecutar como administrador" me lo arregló.
fuente
Para mí, fue porque Visual Studio estaba tratando de volver a cargar todos los archivos modificados desde la extracción. Haga que Visual Studio actualice y luego corra
git gc
.fuente
En Windows usando GitHub para Windows, recibí un error similar en el shell cuando ejecuto
git gc
:Lo resolví cerrando la GUI de GitHub.
fuente
Intente reiniciar Apache u otro servidor web, ya que puede haber bloqueado algunos de sus archivos.
fuente
Cerré Visual Studio y Rubymine y no volví a recibir el error. Uno de ellos fue el culpable.
fuente
Cierra tu IDE y luego hazlo
git pull
. Funcionará.fuente
También tengo este problema, pero descubrí que era el UltraEdit en el camino, ya que usé UE para organizar y editar mi espacio de trabajo de eclipse ~~
Tal vez porque el UE tiene un identificador en la versión anterior de un archivo específico, Git no pudo desvincularlo.
Después de cerrar UltraEdit, el problema nunca volvió a ocurrir.
fuente
Esto fue causado en mi caso por SimpLESS, el compilador LESS. Tienes que cerrarlo en la bandeja del sistema.
fuente
El problema es porque tienes algún programa que maneja estos archivos. Tengo una sugerencia de que debe usar el Desbloqueador para encontrar el programa que lo maneja:
Desbloqueo
fuente
Me ha sucedido esto en Windows XP, tanto con el mensaje atrapado en un bucle como para poder borrarlo respondiendo.
La ocurrencia atascada en un bucle se eliminó cerrando la Git-GUI. (Estaba ejecutando git merge -i en un shell bash).
Las otras ocurrencias posiblemente ocurrieron debido a la gran cantidad de archivos en mi repositorio. Sucedió principalmente con archivos .cod, que luego excluyo del control de versiones. (Tengo una razón para rastrearlos inicialmente). Creo que la causa podría estar relacionada con la velocidad a la que Git usa identificadores de archivos.
Me pregunto si el problema de poder ser resuelto respondiendo está relacionado con Windows, ya que dos pósters anteriores han mencionado Windows, y nadie ha dicho que tengan el problema con otros sistemas operativos.
fuente
Tenía PHPStorm abierto, cerrado y todo estaba bien.
fuente
Tuve el mismo problema y cerré todos los programas relacionados desde el Administrador de tareas de Windows. Sin embargo, todavía no estaba funcionando. Lo interesante es que ejecuté "Git rebase" en lugar de "Git pull" y funcionó.
fuente
Ninguna de las respuestas anteriores no funciona para mí, pero ejecuté el comando git gc con la opción force, y resolvió mi caso.
'git gc --force'
[Windows 7, Ejecutar como administrador => Símbolo del sistema]
fuente
Intente ejecutar el editor de línea de comandos en modo administrativo y ejecute el comando. Ayuda y resuelve el problema. :)
fuente
En mi caso, tenía un método antiguo de poda de etiquetas que causaba el problema. Lo resolví desarmando el original:
luego agrega esto para podar ramas eliminadas en el servidor:
fuente
Enfrenté el mismo error y lo resolví cerrando el eclipse y tirando de nuevo mientras se usaba el archivo.
fuente