适用于 Windows 和 Mac 的 Git Hook 脚本

Ian*_*yos 6 git bash pre-commit-hook githooks

我正在尝试编写一个 git 预提交挂钩,但我需要它兼容 Windows 和 Mac(多个不同的开发机器),或者至少有某种方法来检测操作系统并更改为适当的环境。

我知道如果将我的 shebang 设置为

#!C:/Program\ Files/Git/usr/bin/sh.exe
Run Code Online (Sandbox Code Playgroud)

然后 Windows 将切换为使用 git bash 执行。

Mac 上也是如此

#!/bin/bash
Run Code Online (Sandbox Code Playgroud)

设置 bash 执行环境。

但如果钩子有错误的 shebang,它甚至不会读取它。我需要一种方法来区分操作系统并相应地设置 shebang。

为 Mac 和 Windows 创建单独的钩子,并将它们单独安装在机器上是不可能的,因为这会使代码维护/重构变得不可能。

想法?