gpt4 book ai didi

linux - 从 Crontab 调用 GIT SVN FETCH

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:07:18 26 4
gpt4 key购买 nike

我正在尝试使用 linux box 中的 crontab 运行计划的 cron 作业,我会在其中定期运行命令 git svn fetch。

这是我的 crontab 的样子:

  1 #!/bin/bash
2 PATH="/usr/local:/usr/local/bin:/bin"
3 HOME="/home/person1/src"
4
5 * * * * * /home/person1/src/autofetch.sh
6 0 9,13,17 * * 1-5 /home/person1/src/autofetch.sh

我的 autofetch.sh 只包含命令:“git svn fetch”

我想我已经接近了,因为它找到了 git 命令,而且它能够在可以使用 git 的环境中运行。我最初遇到的问题是:

Already at toplevel, but .git not found

但是现在我收到一个奇怪的身份验证错误发送到我的 linux 邮箱:

X-Cron-Env: <PATH=/usr/local:/usr/local/bin:/bin>
X-Cron-Env: <HOME=/home/person1/src>
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <LOGNAME=person1>
X-Cron-Env: <USER=person1>

Authentication realm: <http://subversion.server1.com:80> Subversion repository
Password for 'person1':
Authentication realm: <http://subversion.server1.com:80> Subversion repository
Username: Use of uninitialized value in chomp at /usr/local/libexec/git-core/git-svn line 4322.
error: git-svn died of signal 11

有人知道怎么办吗?或者之前使用 crontab 运行计划的 git 命令?

注意事项:

  • 我有一个从颠覆服务器运行的 git 客户端,这就是 git-svn 发挥作用的地方。
  • 我的 git 仓库在/home/person1/src
  • 只要我在/home/person1/src 目录中,我就可以从终端运行“git svn fetch”

最佳答案

您可能不想将 HOME 设置为/home/person1/src。 svn 使用 $HOME 来查找其缓存的密码,除非您将 HOME 设置为/home/person1,否则它不会查找。如果你想让你的 cron 在 src 目录中运行,只需在脚本顶部放置一个“cd $HOME/src”命令。

关于linux - 从 Crontab 调用 GIT SVN FETCH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11530271/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com