如何使用 cronjob 进行“git pull”

问题描述 投票:0回答:1

在带有用户

piuser
的树莓派上,我有一个 git 存储库
~/myfiles/gitrepo
,通过 ssh 访问 git,当手动完成时,它与
git pull
配合得很好。

但是我想通过我使用的 cron 作业自动执行此操作

* * * * * cd ~/myfiles/gitrepo/ && git pull

日志显示经典 git 没有权限:

fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我怎样才能让它发挥作用?

到目前为止我尝试过的:

  • 检查来自 Git 使用 cronjob 自动拉取的回复。这导致了directory not a git repo
    ,尽管它肯定是
  • 通过验证
  • piuser
     在日志中显示 
    * * * * * echo "$(date): $(whoami)" >> ~/mylog.log
     来确保 cron 使用 
    piuser
    
    
  • 手动执行
  • git pull
     因为 
    piuser
     效果很好
感谢您的任何想法!

git cron
1个回答
1
投票
90%的时间这是因为枯萎:

    执行此操作的用户无权访问您正在使用的 SSH 密钥
  1. SSH 密钥丢失或配对不正确
  2. SSH 密钥的权限与预期不符。
© www.soinside.com 2019 - 2024. All rights reserved.