2

Я отправил pub ssh который был сгенерирован для моего репозитория чтобы подключиться еще к одному. Успешно клонировал создал ветку и теперь при попытке сделать git push pavel master получаю

ush pavel master fatal: 'pavel' does not appear to be a git repository fatal: Could not read from remote repository.

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

Помогите пожалуйста разобраться что я сделал не так и как это поправить. Спасибо.

Вот еще скрин:

введите сюда описание изображения

Pavel
  • 5,327

1 Answers1

5

SSH-ключ должен быть уникален для пользователя на одном git-сервере.

При авторизации, например на GitHub, вы авторизуетесь под пользователем git и со своим ключом. Именно по ключу GitHub или другой сервер отличает вас от остальных пользователей.

Проверить можно так:

$ ssh -T git@github.com

Hi Username! You've successfully authenticated, but GitHub does not provide shell access.

Успешно клонировал

Если вы успешно клонировали проект по протоколу ssh, значит с авторизацией точно всё в порядке. Есть две возможных причины проблемы:

  • Вы все-таки клонировали проект по https. Проверяется так:

    git remote -v
    

    В выводе должны быть пути с ssh@, а не с https://.

  • У вас есть право на чтение, но нет права на запись в репозиторий. Есть два способа решения:

Nick Volynkin
  • 34,094
  • Вот ввел коменду проверить протокол git remote -v origin git@github.com:M4MIND/SaleFinder.git (fetch) origin git@github.com:M4MIND/SaleFinder.git (push) Что это значит? Намеков на протокол не вижу но репозиторий тот. – Pavel Jul 14 '17 at 14:53
  • 1
    @Pavel значит второй вариант. Обращайтесь к владельцу репозитория, чтобы выдал вам доступ. Подробнее: Подключение к чужому репозиторию GitHub – Nick Volynkin Jul 14 '17 at 14:56
  • ♦ там только в целом а где настраивается доступ что бы не через пул реквкст а на прямую пушить? – Pavel Jul 14 '17 at 15:01
  • 1
    @Pavel Contributors. –  Jul 14 '17 at 15:01
  • @D-side добавили подтвердили та же ошибка((( – Pavel Jul 14 '17 at 15:18
  • 2
    @Pavel а ssh -T git@github.com приветствует того, кого вы ожидаете? –  Jul 14 '17 at 15:19
  • 1
    @Pavel вы в итоге решили проблему? Что там было? – Nick Volynkin Jul 20 '17 at 01:08
  • @Nick Volynkin♦ пардон случайно принял ответ нет не решилось. На команду ssh -T git@github.com получаю Hi triodjangopiter! You've successfully authenticated, but GitHub does not provide shell access. тоесть он видит того пользователя triodjangopiter это я но доступ не дает. А что значит shell доступ..? – Pavel Jul 20 '17 at 06:01
  • "shell access" это когда вы можете залогиниться по SSH и выполнять какие-то команды на удаленном сервере. Разумеется, на github.com этого не позволят. Но git использует аутентификацию по SSH, и она, судя по сообщению, успешна. Ключ ваш зарегистрирован в учетной записи triodjangopiter. – Nick Volynkin Jul 20 '17 at 06:07
  • @Pavel где настраивается доступ что бы не через пул реквкст а на прямую пушить – если репозиторий не ваш, может быть вам и не дадут напрямую пушить. Вместо этого сделайте форк. https://ru.stackoverflow.com/a/505741/181472 – Nick Volynkin Jul 20 '17 at 06:08
  • @Nick Volynkin♦ да я понимаю о чем вы, но мы с товарищем решили попробовать делать пуши на прямую. Тоесть строгого дяди который не разрешает нет, это взаимная инициатива. Просто не получается настроить ... Наверняка для гита технически это возможно, но пока не получается. – Pavel Jul 20 '17 at 06:33
  • @Pavel тогда скажите товарищу, чтобы добавил вашу учетку в collaborators в своем репозитории на гитхабе. Что именно там не получается? – Nick Volynkin Jul 20 '17 at 06:38
  • @Nick Volynkin♦ вот в том то и дело что он добавил мне пришло уведомление на email а я его подтвердил, но результат все тот же. Просто это было после того как вы написали ответ и я не стал редактировать вопрос. – Pavel Jul 20 '17 at 06:40
  • @Nick Volynkin♦ Все получилось! Оказывается я просто пушил не в тот репозиторий к которому он прикрепил меня как collaborators. Я думал это на весь аккаунт распространяется а оказывается на конкретный репо а у нас там несколько проектов паралельно. Если добавите в ответ наверняка кому-то пригодиться.Спасибо за помощь, удачи! – Pavel Jul 20 '17 at 06:50
  • @Pavel да, всё верно, это разрешение на конкретный проект. Можете создать там организацию, тогда права будут распространяться на всех участников организации. https://github.com/blog/674-introducing-organizations – Nick Volynkin Jul 20 '17 at 06:51