我正在编写一个 cronjob,它将git fetch
。我有一个私钥,我经常用它来验证 git 的东西(比如 github),上面有一个密码,但这个特定的git fetch
不需要密钥。我的密钥保存在 的正常位置.ssh/id_rsa
。当我运行 时,一切都很顺利ssh-agent
,但我的 cronjob 没有那么奢侈。
我已尝试过GIT_ASKPASS=echo git fetch
,但密钥失败并且无法获取 repo。
答案1
您可以使用~/.ssh/config
文件为了指定一组不同的公钥和私钥:
Host anEntry
User yourLogin
Hostname SSH IP address --eg 192.68.24.1
IdentityFile "path to your private ssh key without passphrase"
然后你可以使用如下 ssh url:
git fetch anEntry:yourRepo