在shell脚本中指示git pull的密码,没有ssh?

时间:2012-03-07 07:42:33

标签: git shell

我编写了一个shell脚本来使用Git进行项目发布,在shell脚本中我首先cd添加到Git工作副本,然后执行git pull origin master。 但它提示我输入密码:git@localhost's password:,这很烦人,我想知道我是否可以在脚本中指出git pull的密码,如下所示:
git pull origin master --password abcd123
有什么想法吗?

1 个答案:

答案 0 :(得分:3)

通常:不要将密码放入脚本中,特别是不要为它们提供命令参数,因为这意味着它们通过ps命令发布给同一台计算机上的任何人。

这里的解决方案是使用ssh并运行ssh代理。代理加载您的私钥,并在尝试通过SSH连接到远程端时将其提供给shell脚本。这样,您只需要向代理商提供密码短语。

此博客文章应该为您提供更多详细信息:Password-less logins with OpenSSH

如果您使用的是Windows,putty具有相同的功能。