0
理想情況下,我想要類似set :scm_keyfile, "~/.ssh/server-deploy-key"
。指定的路徑當然是遠程服務器上的路徑。如何在克隆遠程服務器上的存儲庫時指定capistrano將使用的密鑰文件?
理想情況下,我想要類似set :scm_keyfile, "~/.ssh/server-deploy-key"
。指定的路徑當然是遠程服務器上的路徑。如何在克隆遠程服務器上的存儲庫時指定capistrano將使用的密鑰文件?
如果遠程用戶已經有~/.ssh/id_rsa
或~/.ssh/id_dsa
那麼git
默認會使用它。
如果您希望爲您的私鑰使用備用文件名,可以這樣做。創建遠程服務器~/.ssh/config
上的文件,把這些線在它
Host github.com
User git
IdentityFile ~/.ssh/server-deploy-key
現在,當您嘗試運行像git clone [email protected]/xxx/yyy.git
命令,你~/.ssh/server-deploy-key
將被使用。
另一種方法是使用ssh-agent轉發。在這種方法中,您不需要將部署密鑰放在遠程服務器上。只要它在本地計算機上,並且您已啓用ssh-agent轉發,您的遠程服務器將有權訪問該密鑰並將使用它。有一個nice article on github解釋這一點。