Por qué git no me deja borrar una twig remota

Tengo un repository local que quiero reflejar en el 'websrv' remoto. Esto solía funcionar bien hasta que eliminé una sucursal local. Ahora cuando lo hago

git push --mirror websrv 

yo obtengo

 remote: error: By default, deleting the current branch is denied, because the next remote: error: 'git clone' won't result in any file checked out, causing confusion. remote: error: remote: error: You can set 'receive.denyDeleteCurrent' configuration variable to remote: error: 'warn' or 'ignore' in the remote repository to allow deleting the remote: error: current branch, with or without a warning message. remote: error: remote: error: To squelch this message, you can set it to 'refuse'. remote: error: refusing to delete the current branch: refs/heads/ecoli-moments To git@141.89.117.199:~/baki_tracking.git ! [remote rejected] ecoli-moments (deletion of the current branch prohibited) 

La twig 'ecoli-moments' apunta a la misma confirmación como maestra, local y remota.

¿Qué puedo hacer para que la twig remota se elimine correctamente?

Actualizar:

El repository remoto está vacío, revisé el directory en el server (el file de configuration tiene bare = true).

Incluso un repository desnudo tiene una twig actual. Es el que se revisará de manera pnetworkingeterminada cuando se clone el repository. Git no quiere borrarlo y te dice por qué.

La twig pnetworkingeterminada es la reference HEAD especial. Modifíquelo para que apunte a algo que se espera que siempre exista, o para apuntar a una revisión. Ver también ¿Cómo se establece origen / HEAD? .

Tendrá que cambiar lo que HEAD apunta manualmente utilizando git symbolic-ref (1) en el server.

O puede establecer la opción mencionada en el error en falso ( git config receive.denyDeleteCurrent false en el server); si solo es una copy de security ( --mirror es principalmente apropiado solo para la copy de security), la twig pnetworkingeterminada realmente no importa.

Esto parece ser un repository no desnudo. Si ese es el caso, no funcionará ninguna operación de inserción a la sucursal desprotegida en el repository no desnudo, git no lo permite.

Así que, básicamente, necesita verificar una twig diferente y luego presionar al repository.

A partir del comentario de Jan, un método útil es no verificar ninguna twig en absoluto, es decir, pasar al estado detached HEAD donde la HEAD ref señala una revisión específica en lugar de una twig.

La ventaja de esto es que si realiza más commits en diferentes twigs en el futuro, no tiene que verificar diferentes twigs cada vez que se lanza este error.

Sin embargo, una mejor manera de evitar esto, si está haciendo esto solo para respaldos, es utilizar un repository simple la próxima vez.