Ссылаясь на официальную документацию :
--mirror
Настройте зеркало исходного репозитория. Это подразумевает --bare
. По сравнению с --bare
, --mirror
не только сопоставляет локальные ветви источника с локальными ветвями цели, но и сопоставляет все ссылки (включая ветки удаленного отслеживания, примечания и т. Д. c.) И устанавливает конфигурацию refspec таким образом, чтобы все эти ссылки перезаписываются git remote update
в целевом репозитории.
Клонируя с опцией --mirror
, вы неявно используете опцию --bare
, которая создает репозиторий без рабочего дерева. Параметр --bare
используется в основном на стороне сервера или в определенных c случаях использования.
В вашем случае вы не должны напрямую использовать свое зеркальное репо, так как отсутствие рабочего дерева не подходит для редактирования файлов или для команд git как git checkout
. Вам необходимо git clone your-mirrored-repo
(без опции --bare
/ --mirror
), чтобы иметь полное рабочее дерево, запускаемое из зеркального репо, в котором вы можете использовать все команды git или редактировать файлы напрямую.