Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过netrc.gpg文件将git fetch应用于crontab_Git_Cron - Fatal编程技术网

如何通过netrc.gpg文件将git fetch应用于crontab

如何通过netrc.gpg文件将git fetch应用于crontab,git,cron,Git,Cron,我目前计划在redmine中注册并使用git存储库 因为redmine不是通过远程url进行管理的,所以出现了一个问题,您必须对其进行git克隆,并定期保留提取 它可以简单地通过git凭证存储来处理,但我认为存在安全问题,所以我用netrc.gpg文件加密了netrc文件,然后让git凭证netrc文件通过git.credential=netrc-v获取 这些任务是在看到下面的参考资料后编写的 特别是,我参考了参考编号1,并且我还检查了在按照下面的方式制作shell脚本之后,在本地打开s

我目前计划在redmine中注册并使用git存储库

因为redmine不是通过远程url进行管理的,所以出现了一个问题,您必须对其进行git克隆,并定期保留提取

它可以简单地通过git
凭证存储来处理,但我认为存在安全问题,所以我用netrc.gpg文件加密了netrc文件,然后让git凭证netrc文件通过
git.credential=netrc-v
获取

这些任务是在看到下面的参考资料后编写的

  • 特别是,我参考了参考编号1,并且我还检查了在按照下面的方式制作shell脚本之后,在本地打开shell脚本时,shell脚本是否正常工作

    • update-git-repo.sh
    • 正确结果

    但是,将此shell脚本文件转换为crontab以定期对其进行操作时出现问题

    • crontab-e
    • cron.log

    起初,我认为这是一个用户权限问题,但是当一个名为
    vanilla
    的用户操作shell脚本时,它工作得很好,我用
    crontab-e-u vanilla
    检查了该用户的crontab文件,并确认它在该文件中

    有什么问题吗

    我正在使用git credential netrc附加一个指向该文件的链接,尽管我不知道它是否有帮助


    这是一个非常简单的问题。 我更改了git全局凭据选项,如下所示,问题得到了解决

    git config --global credential.helper /usr/local/bin/git-credential-netrc
    
    在运行本地shell脚本时,它作为一个
    git config--global credential.helper“netrc-v”
    命令工作,但是在crontab的情况下,由于环境变量或其他问题,实际命令的位置必须指定并注册为凭据

    # m h  dom mon dow   command
     */1 * * * * /home/vanilla/redmine/docker-redmine/update-git-repo.sh >> ~/cron.log 2>&1
    
    git config --global credential.helper /usr/local/bin/git-credential-netrc