【问题标题】:Will crontab run scripts on git branch master or main by default?crontab 默认会在 git branch master 或 main 上运行脚本吗?
【发布时间】:2022-02-04 04:55:40
【问题描述】:

如果这个帖子应该在堆栈溢出以外的论坛上,请原谅。

在 linux 集群上,我正在运行一个 24/7 的 python 脚本来连接到数据流,对其进行处理,并将其推送到数据库。设置了一个 crontab 文件来监控脚本是否正在运行,如果它停止,它将再次启动。

我需要编辑脚本并对其进行测试,因此为此创建了一个 git 分支。我想确保如果原始脚本(在主分支上)停止,crontab 将运行它而不是新分支上的修改文件。

我的两个问题是:

  1. crontab 是否默认在 main(或 master)上运行脚本?
  2. 调用时如何指定要运行的文件的git分支? (主要是为了冗长)

【问题讨论】:

    标签: python git cron


    【解决方案1】:

    Crontab 将在文件上运行,因此,无论本地 repo 处于何种状态,无论是使用 main/master 更新还是拉到另一个分支,还是在本地编辑,它都会运行该文件。

    如果您想显式运行特定分支,我的建议是将 cron 指向一个单独的脚本,该脚本可以将分支作为参数,然后根据您的需要准备脚本位置,然后运行它。

    【讨论】:

    • 那么最简单的解决办法就是新建一个文件?很简单,但是编辑文件的分支有什么意义呢?也许我使用 git 的方式与预期不同。
    • @kentkr:Git 的目的,或 raison d'être,是管理 commits。提交是文件的集合,以具有历史记录的快照的形式。历史是具有作为先前快照(或快照集等)的历史的先前快照(或一组快照)。 Git 存储库中的分支名称为您提供了一种快速简便的方法来查找特定提交,我们称其为(该分支的)“最新提交”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-21
    • 1970-01-01
    • 2013-05-04
    • 2014-10-06
    • 1970-01-01
    • 2019-03-23
    • 2015-10-05
    相关资源
    最近更新 更多