通过 cron (log/shortlog) 从脚本调用时,git 不产生任何输出

通过 cron (log/shortlog) 从脚本调用时,git 不产生任何输出

我有一个脚本git-test,用于访问本地 git repo 并调用git shortlog以跟踪最近的更改。出于测试目的,我仅使用了以下几行:

#!/bin/bash
cd /myrepo.git
result="$(/usr/bin/git shortlog -3)"
echo "$(date):$result" >> /tmp/git-log

crontab 条目是

* * * * * /home/username/git-test >> /tmp/cron-output 2>&1

我试过:

  1. 从终端调用脚本 -> 运行正常,获取 git 短日志
  2. 从 cron 调用脚本,如上所示 -> 没有 git 输出,/tmp/git-log也没有错误/tmp/cron-output
  3. 从 cron 调用脚本,但执行 a$(ls -lh)"而不是$(/usr/bin git shortlog -3)-> 执行得很好
  4. 从 cron 调用脚本,直接写入文件git shortlog -3 >> /tmp/git-log-> 没有 git 输出,/tmp/git-log也没有错误/tmp/cron-output
  5. 将 gitcd /myrepo.git;git shortlog -3 >> /tmp/cron-output 2>&1直接放入 crontab 中->无输出,无错误/tmp/cron-output

您知道可能是什么问题吗?

谢谢你!

相关内容