Error de Git en git pull (no se puede actualizar la referencia local)

Resuelto user115561 asked hace 12 años • 0 respuestas

Solo tengo una rama maestra y recibo este error cada vez que intento git pull:

error: Couldn't set refs/remotes/origin/master
From /var/lib/git/xxx/project
 ! a0f80ea..49177a3  master     -> origin/master  (unable to update local ref)

Y cuando corro git pull origin masterme sale:

error: Couldn't set ORIG_HEAD
fatal: Cannot update the ref 'ORIG_HEAD'.

He estado buscando pero no encuentro por qué.

user115561 avatar Apr 09 '12 10:04 user115561
Aceptado

Mi equipo y yo nos encontramos con este error, no pudimos actualizar la referencia local al realizar una extracción en SourceTree.

Actualización 2020: según la respuesta de @Edward Yang a continuación, el comentario de @bryan sobre esta respuesta y esta pregunta/respuesta , es posible que deba ejecutar ambos git gc --prune=nowy git remote prune origin. Ejecutar solo el primero siempre me ha funcionado, pero según las respuestas de las personas, creo que ambos son necesarios para abordar diferentes causas del error.

Nosotros usamos:

git gc --prune=now

Esto elimina cualquier objeto de referencia duplicado que debería solucionar el problema.

Aquí hay algunos enlaces donde puede obtener más información sobre las referencias y la poda de git :

consejo de git de la semana

documentación de git-prun

referencias de git

Greg Venech avatar Dec 03 '2014 17:12 Greg Venech

Resolví lo siguiente:

git remote prune origin

Edward Yang avatar Jul 28 '2015 08:07 Edward Yang

con el comando de línea gitbach, utilícelo git update-refpara actualizar la referencia de su sucursal local:

$ git update-ref -d refs/remotes/origin/[locked branch name]

luego tire usando$ git pull

[locked branch name]es el nombre de la rama en la que se produce el error debido a que los ID de confirmación no coinciden.

T.Moez avatar Mar 09 '2020 12:03 T.Moez