我试图从服务器1 ssh到服务器2,并执行从服务器1到服务器2的git pull 。
所以在服务器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仓库的用户。 如果你是root用户,确保root用户至less拥有repo的权限(如果你使用的是git的一些智能版本,比如gitolite,gitlab等等)。
顺便说一句,如果你想释放这个,使用git fetch && git reset --hard origin/master而不是git pull。 Git拉使合并,它可以结束冲突,GIT重置只是将实际的头指针移动到不同的提交,而不合并anythig。