! [удаленные отклонения] после зеркалирования хранилища git

Я следую этой документации: https://help.github.com/articles/duplicating-a-repository/

git clone --mirror https://github.com/exampleuser/repository-to-mirror.git

cd repository-to-mirror.git

git push --mirror https://github.com/exampleuser/mirrored

Результат показывает, что репозиторий вытолкнут как зеркало, но по какой-то причине я получаю эти ошибки:

 ! [remote rejected] refs/pull/1/head -> refs/pull/1/head (deny updating a hidden ref)
 ! [remote rejected] refs/pull/1/merge -> refs/pull/1/merge (deny updating a hidden ref)

Что это за ошибки? Могу ли я предположить, что репозиторий был зеркалирован?

Ответ 1

Как упоминалось в этой проблеме, это происходит, когда вы зеркалируете репозиторий GitHub, у которого есть тяговые запросы.

Ссылка refs refs/pull '- это синтетические ссылки только для чтения, созданные GitHub - вы не можете обновлять (и, следовательно, "чистить" ), потому что они отражают ветки, которые могут на самом деле поступают из других репозиториев - те, которые отправили вам запросы.

Итак, пока вы нажимаете все свои настоящие ссылки, запросы на перенос не обновляются

Вам нужно зеркально отразить репозиторий GitHub без их запросов на перенос.

Просто замените catch-all refspec выше двумя более специфическими спецификациями, чтобы просто включить все главы и теги, но не тянуть, и все удаленные ссылки ref больше не будут попадать в ваше голое зеркало:

fetch = +refs/heads/*:refs/heads/*
fetch = +refs/tags/*:refs/tags/*
fetch = +refs/change/*:refs/change/*

Ответ 2

вместо

мерзкий клон --mirror

использование

мерзавец клон --bare

инструкции