Ключ SSH добавлен в github с возможностью чтения / записи, но получение разрешения все еще запрещено - PullRequest
0 голосов
/ 13 мая 2018

Так что я использую GitHub в течение многих лет без каких-либо проблем.Сегодня я только что столкнулся с первым.Я создал новую учетную запись, создал новое хранилище, и я клонировал и зафиксировал в хранилище.На данный момент у меня есть содержимое в моем репозитории GitHub.

Однако сейчас я попытался использовать git commit -am "Updated." и просто запустил простой git push origin master, чтобы зафиксировать свои изменения, и столкнулся с этой ошибкой:

[user:.../scripts/ptscripts]$ git push origin master                                                              12:01PM/05.13
ERROR: Permission to my-github-user/ptscripts.git denied to [obfuscated user].
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Я не понимаю, почему я получаю эту ошибку.Мой публичный ключ SSH добавлен в мою учетную запись GitHub, и он показывает Чтение / Запись.[Запутанный пользователь].однако, он принадлежит другой учетной записи пользователя GitHub, поэтому я не совсем уверен, почему он пытается использовать старую учетную запись пользователя.

Единственное, что я недавно сделал, - изменил разрешения ~/.config с root на моюучетная запись пользователя для подавления предупреждения об отказе в разрешении.Кроме этого, я ничего не изменил.

Буду признателен за любые предложения.

Ответы [ 2 ]

0 голосов
/ 13 мая 2018

Похоже, вы не изменили секретный ключ SSH для github.com. GitHub различает пользователей по тому, какой SSH-ключ используется.

~/.ssh/config удобно менять ключ. Мой конфиг для github.com такой:

Host github.com
  user git
  IdentityFile ~/.ssh/set0gut1.key
#  IdentityFile ~/.ssh/old-account.key
0 голосов
/ 13 мая 2018

У меня должен был быть один и тот же ключ SSH в двух разных учетных записях GitHub или что-то еще - пока не уверен. Вот что я сделал, чтобы исправить это, хотя это может быть не самым правильным или простым способом:

  1. Перечислил ключи, кэшированные ssh-agent, запустив ssh-add -l
  2. Удалил все ключи, запустив ssh-add -d /path/to/key для каждого ключа
  3. Убил обе ssh-agent службы, которые работали с pgrep ssh-agent | xargs kill
  4. Перезагрузка ssh-agent с eval $(ssh-agent)
  5. Повторно добавил ключ, используя ssh-add /path/to/key

После повторного запуска git push origin master все работало нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...