Git hooks支持哪些脚本语言?我看到Python、Ruby和Bash的示例。这些是唯一支持的吗?目前我主要想在Windows上使用,但对上述语言不熟悉。我想知道它是否支持类似VBscript、Powershell或Windows批处理文件的东西?是否有所有支持的语言列表?
它支持系统能够执行的任何内容。你甚至可以使用COBOL编写你的钩子!
没有支持语言的全面列表,但是您计算机上可执行的所有内容都可以从git中使用。为了说明这一点,
git config alias.getprop '!powershell -command "& { Get-ItemProperty $1 }"'
git getprop .git/config
#! /bin/sh
,是这些系统能够执行shell脚本的方法。一个文件的前两个字符为#!
(且可执行),它会通过读取其余的可执行头部信息(基本上是到换行符为止,同时可能有系统定义的大小限制),将它视为解释器的路径名,然后执行该解释器并插入“被解释”的路径名来代替,所以#! /bin/sh
使操作系统运行/bin/sh script
。(换言之,这不是git的问题,而是操作系统的问题。) - torek