![如何创建一个 cron 任务,每周将我的项目更改提交给 git](https://linux22.com/image/1270597/%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%20cron%20%E4%BB%BB%E5%8A%A1%EF%BC%8C%E6%AF%8F%E5%91%A8%E5%B0%86%E6%88%91%E7%9A%84%E9%A1%B9%E7%9B%AE%E6%9B%B4%E6%94%B9%E6%8F%90%E4%BA%A4%E7%BB%99%20git.png)
我使用 git 的目的是记录我项目所做的更改。我知道这不是理想的用法,但这是我出于各种原因选择的使用模式,为了简洁起见,我不会深入讨论。
我如何创建一个 cron 作业来每天或每周将更改提交到存储库?
我在 Ubuntu 10.10 上使用最新版本的 git。
答案1
0 20 * * 0 /path_to_script
这将在每个星期日的当地时间 20:00 运行指定的命令 (replace /path_to_script'
)。 cron 作业的语法相当简单,并且有一个光滑的工具这将帮助您创建它们而无需记住代码位置。
在这种情况下,命令应该是为您运行提交的脚本。我认为,对于您的情况,最简单的方法是编写一个快速的 shell 脚本来切换到克隆目录,然后运行提交。创建一个文件,并将~/commit.sh
其放入其中(/location/of/clone
当然,替换)
#!/bin/sh
cd /location/of/clone
git-commit -m "commit message, to avoid being prompted interactively"
然后chmod +x ~/commit.sh
使其可执行,并让 cron 作业运行它(通过其完整路径引用它,而不是使用~
)。
答案2
运行crontab -e
编辑你的用户 cronjob,并插入以下行:
0 20 * * 0 (cd /path/to/myproject && git add . && git commit -m "Automatic Commit" && git push)
当然,您必须设置您的 GIT 存储库,包括一个可用的远程存储库,但这不在这个问题的范围内。