Some people, like me, may sometimes trying to move to ‘Bitbucket’ repository from ‘GitHub’ by any private reason to prevent steal source codes to M$.
error: refusing to delete the current branch
Because GitHub doesn’t like these legacy words, ‘master’ and ‘slave’ as default repository branch name, but BitBucket still follows legacy naming of default branch. Just need to go to configuration page, and change default main branch name to ‘main’ from ‘master’.
Then try to push mirror repository again, it will be succeeded.