Назад | Перейти на главную страницу

ssh и git pull с удаленного сервера

Я пытаюсь установить ssh с сервера 1 на сервер 2 и сделать git pull с сервера 1 на сервер 2.

Итак, на сервере 1 я запускаю следующую команду:

ssh root@server2 'cd /root/.example; git pull origin master'

но это дает мне эту ошибку:

Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

Он может использовать ssh, потому что когда я делаю ls (ssh root@server2 'cd /root/.example; ls) Я вижу содержимое /root/.example каталог. Просто не умеет git pull origin master потому что он использует неправильный ключ.

Что я могу сделать иначе?

Я использую Centos 6.

Вам необходимо использовать ssh для пользователя, имеющего доступ к репозиторию git. Если вы используете ssh для получения root-прав, убедитесь, что root имеет хотя бы riead-права на репо (в случае, если вы используете какую-то умную версию git, такую ​​как gitolite, gitlab и т. Д.).

Кстати, если вы пытаетесь выпустить с этим релиз, используйте git fetch && git reset --hard origin/master вместо git pull. Git pull выполняет слияние, и это может закончиться конфликтами, git reset просто перемещает фактический указатель головы в другой коммит без слияния чего-либо.