Невозможно прочитать из удаленного репозитория после git mirror

Я экспериментировал с созданием зеркала одного из моих репозиториев gitolite и столкнулся с проблемой. Я создал зеркало на том же компьютере, что и исходные репозитории git, используя команды;

cd /var/repo_mirrors
git clone --mirror /home/gitolite/repositories/Test.git

(По сути, я выполнял следующие шаги: http://www.redmine.org/projects/redmine/wiki/RedmineRepositories#Git-repository)

Я также хотел иметь возможность просматривать репозиторий, поэтому я сделал выбор в пользу www-данных, чтобы Apache мог читать.

Все работало нормально. Но теперь проблема в том, что я не могу клонировать / нажать исходный репозиторий. Когда я пытаюсь, я получаю следующую ошибку:

фатальный: не удалось прочитать объект a0d91d1cc22bfbd5666d51c1ea7a5015008e50b6: отказано в разрешении. Фатальный: не удалось прочитать из удаленного репозитория.

Убедитесь, что у вас есть правильные права доступа и репозиторий существует.

Примечание: до зеркала все работало нормально

Приветствуются любые идеи о том, что пошло не так.


person Roger Floydman    schedule 24.12.2013    source источник


Ответы (1)


Это может быть связано с жесткими ссылками, созданными во время git clone:

Файлы в каталоге .git/objects/ жестко связаны для экономии места, когда это возможно.

Попробуйте тот же клон, но без жестких ссылок:

cd /var/repo_mirrors
git clone --mirror --no-hardlinks /home/gitolite/repositories/Test.git
person VonC    schedule 24.12.2013
comment
Спасибо, вот и все. Беспокоитесь, что зеркало может вызвать такую ​​проблему. - person Roger Floydman; 25.12.2013
comment
Спасибо, чувак, как раз в моем случае: я клонировал локальное репо, отредактировал клон на postgres и запустил несколько сценариев SQL. Но после этого я больше не мог ничего толкать ... И действительно, оказалось, что исходные объектные файлы тоже принадлежали postgres (черт возьми!) ... Вернул его обратно в гитолит, и снова стало возможным волшебное толкание. - person Cromax; 15.06.2016