草庐IT

hook_cron

全部标签

git - 如何从 commit-msg Hook 中提示用户?

如果用户的提交消息不遵循特定的准则,我想警告用户,然后让他们选择编辑提交消息、忽略警告或取消提交。问题是我似乎无法访问stdin。下面是我的提交信息文件:functionverify_info{if[-z"$(grep'$2:.*[a-zA-Z]'$1)"]thenecho>&2$2informationshouldnotbeomittedlocal_editor=`gitconfig--getcore.editor`if[-z"${local_editor}"]thenlocal_editor=${EDITOR}fiecho"Doyouwantto"selectCHOICEin"ed

git - 使用更新后 Hook 在另一个 repo 上执行 "fatal: not a git repository: ' 时得到 .'" 'git pull'

我是git的新手,所以如果我在这里滥用术语,我深表歉意(并请纠正我),但我会尽力而为。我正在尝试在Web服务器上设置一个裸git存储库(hub)和一个开发站点工作副本(prime)。我试图在thisarticle之后对其进行图案化.我希望在将中心repo推送到时更新开发工作副本。我的印象是正确的钩子(Hook)是post-update,我是这样创建的:#!/bin/shwhoamicd/path/to/working-copy/RET=`gitpull`echo$RET更新当我将更改从我的本地存储库推送到裸集线器时,我从更新后脚本中获得以下输出:remote:sitesremote:f

Git 钩子(Hook)发送有关 repo 更改的电子邮件通知

如何配置适当的GitHook,以便在将一组更改推送到上游存储库时发送摘要电子邮件? 最佳答案 另一种更现代的方法是使用git-multimail,正如Chords所建议的那样下面。这就是您在2009年的做法。您可以添加类似this的内容到$GITDIR/hooks中的接收后Hook,或使用源代码的contrib目录中的脚本(Availablehere) 关于Git钩子(Hook)发送有关repo更改的电子邮件通知,我们在StackOverflow上找到一个类似的问题:

git - 编写一个 git post-receive hook 来处理特定的分支

这是我目前在公司服务器中的裸仓库中的钩子(Hook):gitpushoriginmaster这个钩子(Hook)推送到Assembla。我需要的是当有人将更改推送到我们服务器上的那个分支时,只推送一个分支(理想情况下是主分支),而忽略对其他分支的推送。是否可以从裸仓库中选择分支并仅将该分支推送到Assembla? 最佳答案 post-receivehook从stdin获取它的参数,格式如下:由于这些参数来自标准输入,而不是来自命令行参数,因此您需要使用read而不是$1$2$3。post-receivehook可以一次接收多个分支(

git - 如何配置 Git post commit 钩子(Hook)

如何从Jenkins远程触发构建?如何配置Gitpostcommit钩子(Hook)?我的要求是,每当在Git存储库中为特定项目进行更改时,它都会自动启动Jenkins为该项目构建。在Jenkins触发器构建部分,我选择了远程触发器构建。在.git目录下,hooks目录是我们必须配置提交后文件的地方。我很困惑如何从那里触发构建(我知道某些部分我们应该使用curl命令)。curlcmbuild.aln.com/jenkins/view/projectname/job/myproject/buildwithparameters?Branch=feat-con我已将此命令放在我的git服务器

git - 是否有用于 pull 的 git 钩子(Hook)?

每次运行gitpull时,我都需要对我的项目执行一些操作(准备gettext*.mo消息文件)。有没有合适的git钩子(Hook),我可以将其用于此目的? 最佳答案 githooks手册页是一个完整的钩子(Hook)列表。如果它不在那里,它就不存在。也就是说,是一个post-mergehook,并且所有pull都包含merge,但并非所有merge都是pull。它在merge后运行,不会影响结果。如果有冲突,它永远不会被执行;如果真的很重要,您必须使用提交后Hook来获取它,或者手动调用它。

git - 将 git post-commit 钩子(Hook)应用到所有当前和 future 的存储库

我已经编写了一个Git提交后Hook并且它可以正常工作。但是,我想添加此Hook以应用于我正在处理的所有当前(和future)Git存储库。我尝试将钩子(Hook)添加到我的~/.git/hooks/目录而不是项目目录中的hooks目录,但是,这似乎不起作用。有没有一种方法可以创建适用于我系统上所有存储库的全局GitHook(无需将它们复制到每个项目目录中)?如果不是,那么future最好的解决方案是什么——也许是git-init模板? 最佳答案 从Git1.7.1开始,您可以设置init.templatedir在你的gitconf

git - Git 钩子(Hook)脚本可以与存储库一起管理吗?

我们想制作一些我们都可以共享的基本钩子(Hook)脚本——用于预格式化提交消息之类的事情。Git有通常存储在/.git/hooks/下的钩子(Hook)脚本。.但是,当人们进行克隆并且它们不受版本控制时,这些脚本不会传播。有没有什么好的方法可以帮助大家获得合适的钩子(Hook)脚本呢?我可以让这些钩子(Hook)脚本指向我的存储库中的版本控制脚本吗? 最佳答案 在Git2.9,这配置选项core.hooksPath指定自定义Hook目录。将您的Hook移动到存储库中的hooks跟踪目录。然后,配置存储库的每个实例以使用跟踪的hook

linux - Ubuntu cron shebang 不工作

我有一个脚本将其作为shebang#!/usr/bin/envNode。当cron运行我的脚本时,我收到此错误/usr/bin/env:node:Nosuchfileordirectory。当我以我的用户身份运行脚本时,脚本运行良好,只是不是作为cron。我猜这是因为Node不在运行cron的用户的PATH上?我怎样才能让这个shebang与cron一起工作?$哪个Node给我/home/myuser/.nvm/v0.11.14/bin/node 最佳答案 Cron作业在受限环境中运行。在交互式shell中,您的$PATH可能设置在

linux - 在 Docker 容器中运行计划的 cron 作业的解决方案?

我有一个Docker容器,其中安装了我的Python工具,包括我的Luigi管道接口(interface)。我想运行一个shell脚本,每周使用cron启动我的Luigi管道。我尝试了很多方法来让cron在Docker容器中工作。我这辈子都无法运行我的crontab-e文件。在我的文件中我有:00**Sun/data/myscript.sh后跟一个新行。Cron在后台运行-psaux|grepcron显示/usr/sbin/cron正在运行。此外,在我的/var/log/syslog文件中,我有:/USR/SBIN/CRON[2037]:(root)CMD(/data/myscript