В настоящее время мы переносим наши репозитории - один за другим - на другой сервер. Поэтому я хочу запретить клонирование репозитория после его миграции, чтобы убедиться, что пользователь получит сообщение об ошибке, если он или она попытается клонировать его.
Пока я мог достичь этой цели только на полпути: я мог запретить чтение любых веток. Однако сам клон не выдаст никаких сообщений об ошибках. Вместо этого он выводит следующее предупреждение:
warning: You appear to have cloned an empty repository.
В настоящее время разрешения для этого репозитория наследуются от глобальной схемы разрешений, которая предоставляет доступ на чтение для групп, в которые мы входим.
Поэтому я попробовал:
Read
доступ к
refs/*
refs/heads/*
refs/tags/*
Каким-то образом это не приведет к появлению такой ошибки, как «разрешение отклонено», которую я хотел бы видеть.
Есть ли способ добиться этого в gerrit без изменения глобальной схемы разрешений? Возможно, мне нужно унаследовать разрешения от другой схемы разрешений?
Удалить файлы и обновить README (.md | .asciidoc), чтобы он указывал на новый сервер?
@ MarceloÁviladeOliveira: Звучит хорошо. Как я мог это сделать?
@DavidK: Спасибо за предложение, я подумаю над этим.
Я думаю, что лучшая стратегия - установить состояние репозитория «Скрытый». Таким образом, репозиторий скрыт и виден только владельцам проекта. Другие пользователи не могут видеть репозиторий, даже если им предоставлены разрешения на чтение для репозитория.
См. Дополнительную информацию об удалении репозитория здесь и о состоянии репозитория здесь.
Почему бы вам просто не установить репозиторий в состояние «Скрытый»?