带有 Github 的 Crontab

带有 Github 的 Crontab

我希望能够在每天晚上的午夜将存储库推送到 Github。我知道 Github 不是一个备份服务,而且我也不希望它是这样的——我只是想要 Github 上最好的最新版本,这对我和我的团队都有效。我的想法是这样的:

  • 创建一个 Bash 脚本,将存储库正常推送到 Github

  • 在 Crontab 中,在一周中每天的午夜执行脚本。

这是最好的使用方法吗?如果是这样,这似乎很容易做到。

我的下一个问题:)我希望在推送存储库后向我发送一封电子邮件,因此它只会发送一封电子邮件说:“存储库已推送..好的”或者如果出现问题,它会提醒我这。这可能吗?如果是这样,任何人都可以提供一些如何执行此操作的示例。

希望有人可以帮忙:)

答案1

正如 harish.venkat 所描述的链接

创建一个脚本/path_to_script,它将添加新文件、提交并推送。

#!/bin/sh
cd /location/of/clone

git add *
if [[ $? != 0 ]] then 
   mail -s "add failed" [email protected]
   exit 1
fi

git commit -a -m "commit message, to avoid being prompted interactively"
if [[ $? != 0 ]] then 
   mail -s "commit failed" [email protected]
   exit 1
fi

git push
if [[ $? != 0 ]] then 
   mail -s "push failed" [email protected]
   exit 1
fi

mail -s "push ok" [email protected]

将脚本更改为可执行文件,

chmod a+x /path_to_script

使用crontab -e并添加以下行

 # run every night at 03:00
 0 3 * * * /path_to_script

相关内容