Сделайте разрешение на доступ к другому репозиторию на GitHub с помощью открытого ключа

#git #github #ssh

Вопрос:

У меня есть два частных репозитория: репо-А и репо-Б. Я хотел бы ограничить открытый ключ устройства, который может читать только репо-A, но может читать/записывать репо-B. Я попытался добавить открытый ключ в репозиторий-A->настройки=>>Удаленные ключи и не поставил галочку «Разрешить доступ на запись». Результат, как и ожидалось, устройство может только клонировать репозиторий, но не может выполнить push. Но я получил сообщение об ошибке «Ключ уже используется», когда попытался добавить ключ в репозиторий-B->настройки=>>Ключи Deply.

Возможно ли получить разрешение на доступ к другому репозиторию в GitHub с помощью открытого ключа? Я очень новичок в GitHub, любая помощь приветствуется!

Ответ №1:

GitHub допускает два типа ключей SSH: пользовательские ключи, которые связаны с пользователем, и ключи развертывания, которые связаны с репозиторием. Похоже, вы используете ключи развертывания, которые специфичны для одного репозитория и не могут использоваться в других. Это делается для того, чтобы максимально жестко ограничить права доступа.

Если вы хотите получить доступ к разным репозиториям с помощью ключей развертывания, вам потребуется использовать разные ключи развертывания.

Комментарии:

1. Я гуглю ключевое слово, которое вы упомянули, а затем нахожу решение. Я, вероятно, буду использовать ssh-агент для управления несколькими ключами SSH. Большое вам спасибо!