git push --mirror создает точную копию всех веток, тегов и других ссылок локального репозитория в удаленный репозиторий, при этом перезаписывая существующие ссылки на удаленном репозитории. Она полезна для создания полных резервных копий или переноса репозитория.  Использовать нужно с осторожностью, так как это может привести к потере данных на удаленном репозитории, если не соблюдать осторожность.
Команда git push --mirror является мощным, но опасным инструментом, используемым для создания точной копии локального репозитория Git в удаленном репозитории. Она, по сути, синхронизирует все ветки, теги и другие ссылки между локальным и удаленным репозиториями, удаляя удаленные ссылки, которые не существуют в локальном репозитории.
Вот что происходит шаг за шагом:
git push --mirror сначала удаляет все ветки и теги, которые существуют в удаленном репозитории, но не существуют в локальном репозитории.  Это происходит перед отправкой новых данных.  Это критично для понимания: если вы случайно удалили ветку локально и запустите git push --mirror, она будет удалена и на удаленном репозитории!Когда это полезно:
git push --mirror для создания точной копии на новом сервере.Почему это опасно:
git push --mirror, ветка будет безвозвратно удалена и на удаленном репозитории.  Это может привести к потере важной работы.git push --mirror может нарушить работу других разработчиков, которые работают с удаленным репозиторием, особенно если она удаляет ветки, над которыми другие работают.git push.В заключение: Используйте git push --mirror с особой осторожностью и только когда абсолютно уверены, что понимаете последствия.  Перед использованием рекомендуется сделать резервную копию удаленного репозитория.