windows - Git Hook 未在 Windows 上运行

标签 windows bash git hook pre-commit

我刚刚开始使用钩子(Hook),并且在使用 git 提交时遇到了一些简单运行脚本的问题。当使用

从 bash 终端运行时,脚本完全按预期工作
bash pre-commit

命令。但是当用 git 提交时它根本不运行。

文件位于C:/path/to/my/project/.git/hooks/pre-commit,文件内容为:

#!/bin/bash

cd ../
cd ../
echo "pre-commit start"
if py -m unittest discover 2>&1 | grep -q "FAILED"; then
  echo "Test(s) FAILED"
  exit 1
fi
echo "pre-commit end"

我已经尝试在终端中运行 chmod 命令,正如其他帖子中所建议的那样,完全没有任何改变。

chmod +x pre-commit

最佳答案

问题是即使文件位于 C:/path/to/my/project/.git/hooks/pre-commit,我从那里测试它,文件仍在 C:/路径/到/我的/项目/目录。因此两次调用“cd ../”导致脚本退出项目目录,这一定是产生了某种错误。

关于windows - Git Hook 未在 Windows 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53032849/

相关文章:

python - 如何从 Jenkins 的特定构建中获取分支名称?

windows - 构建时部署所有 Qt 依赖项

windows - 有没有办法在 Windows 上获得比 Meta 和 Ctrl 更多的功能?长期的 Emacs 用户想要 Hyper/Super

bash - 无法将 perl 脚本的输出重定向到文件

bash - TAB 补全和 mc 问题

git - git add 后自动显示状态

c - 有什么方法可以使用批处理脚本杀死Windows Task Manager?

windows - Boost spirit : assertion fails under Windows but not Linux. 为什么?

linux - 如何让两个程序使用 std io 进行通信?

git - .gitignore 中包含的文件消失