如何从客户端的服务器每10分钟设置一次自动git推送?

时间:2012-08-06 21:52:41

标签: git ssh crontab

我即将与客户结束一个项目。我正在使用github来存储所有文件。在我离开项目之后,他自然会通过CMS进行更新,上传新图像等。

我担心从现在开始的六个月或一年如果出现问题,我们将处于一个糟糕的地方,因为这将是一整年左右的变化而没有任何git承诺(再次,这是一个客户。我不知道t期望他进入SSH并运行git命令。)我正在尝试设置一个每小时运行一次的crontab作业,它将添加所有内容,提交它并将其推送到github。我遇到的问题是它要求我的用户名和密码并失败。如何设置它以便我的客户端服务器可以将更改推送到github仓库而不必损害我的安全性?

这是我到目前为止所拥有的。

0 * * * * cd ~/clientswebsite.com/; git add -u; git commit -m "Cron job"; git push --verbose > log.txt

1 个答案:

答案 0 :(得分:3)

您有几个选项,但实际上,您必须开始使用SSH密钥身份验证而不是用户名/密码身份验证。

选项取决于您希望使用密钥识别的内容。对于你的情况,我会说它是Deploy Key(绑定到机器)或Machine User(绑定到特定用户帐户,可能跨机器)。

有关详细信息,请参阅此GitHub文章:https://help.github.com/articles/managing-deploy-keys