我有几台远程机器,在完成测试并准备好对生产进行更新(python Flask 应用程序和支持类)后,需要从存储库中提取。几台机器也需要从不同的分支拉取。我一直通过 SSH 连接到每台机器来运行 git pull,但这变得烦人且耗时。
我正在尝试运行 ssh 命令来完成 git pull。这是我尝试过的:
ssh dev@<remote IP> "cd /home/dev/<repo> && git pull"
Run Code Online (Sandbox Code Playgroud)
我得到了
权限被拒绝(公钥)。致命:无法从远程存储库读取。
我可以正常运行其他 git 命令,但不与远程源交互。例如:
ssh dev@<remote IP> "cd /home/dev/<repo> && git remote -v"
Run Code Online (Sandbox Code Playgroud)
当我实际 ssh 到远程计算机时。我导航到该目录并运行git pull没有问题。
我还确保将 ssh 密钥添加到 ssh-agent 中,这样密钥上的密码提示就不会成为问题。
认为这可能是一个密钥权限问题,所以我仔细检查了该密钥是否可以被我运行命令的用户读取。
令人沮丧的是,我能够 ssh 到远程计算机并运行拉取,但无法使用上述格式运行命令。
非常感谢您的帮助!