Si entendí correctamente su problema, tiene tres repos.
- Un control remoto en Github
- Un local para el desarrollo
- Un local en su servidor de puesta en escena
Primero ha actualizado todos los repositorios, luego reescribió el historial en el control remoto y en el desarrollo e intentó tirar de la puesta en escena. Desafortunadamente, la puesta en escena ya tenía su propia historia, así que intente lo siguiente en la puesta en escena:
git fetch
git reset --hard origin/staging
Esto obligará a la historia a la puesta en escena a reescribirse también.