有没有办法通过prepare-commit-msg独立地在git commit上强制发送消息?

时间:2019-04-16 13:43:10

标签: git exception commit githooks

我的prepare-commit-msg git钩子上有一个正则表达式,它就像一个吊饰一样起作用!

但是在极少数情况下,我想强制使用特定的提交消息,因此我想推翻该挂钩。

有办法吗?

我知道标志-n--no-verify对此钩子没有影响吗?我在寻找不可能的东西吗?

非常感谢

1 个答案:

答案 0 :(得分:2)

解决方案之一是,当您要跳过git commitprepare-commit-msg会调用的其他挂钩时,将配置参数传递给git commit

在挂钩中:

#!/bin/bash

if [[ "$(git config --get my.skip)" = yes ]];then
    echo skip prepare-commit-msg
    exit 0
else
    echo prepare-commit-msg
    # do something
fi

在命令中,

git -c my.skip=yes commit

-n--no-verify相比,配置参数可以更灵活地使用特定的挂钩。您可以根据需要传递多个配置参数。