git - 如何创建 git pre hook 来检测 'TODO' 或提交中的任何特定字符串?

标签 git

例如,pycharm 有一个很好的功能,可以在提交包含“TODO”的代码之前警告用户...我希望在使用 git 的标准命令行中有类似的功能。我听说可以使用 git pre-hook 。我会很感激一些关于如何实现这一目标的提示。

最佳答案

作为一个简单的解决方案,您可以将以下 shell 脚本保存为 .git/hooks/pre-commit:

#!/bin/sh

files=$(git diff --cached --name-only --diff-filter=AM)

if [ -n "$files" ]; then
    if grep -H TODO $files; then
        echo "Blocking commit as TODO was found."
        exit 1
    fi
fi

关于git - 如何创建 git pre hook 来检测 'TODO' 或提交中的任何特定字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40509455/

相关文章:

git - 从 git 补丁恢复后如何删除剩余的 .rej 文件?

将远程 ‘origin/develop’ merge 到 ‘origin/master’ 的 Git 工作流程

Git Clone Repo 没有 .git 文件

Git bash 无法识别U盘

git - 如何使用 GitLab API 查找文件的提交哈希值?

Git Cherry-pick 与 merge 工作流

git - 停止在 git 中跟踪文件 - 无需在本地或 pull 时删除它

git - 如何基于远程存储库中的子路径进行克隆

个人仓库的 GitHub 解决方案

git - 如果我将一个文件添加到我的 git 存储库,然后在 gitignore 中添加一个表明该文件被忽略的模式,会发生什么