2

我正在尝试在 Windows IIS 服务器上的远程存储库(使用 hgweb)上设置一个挂钩。我遇到的问题是存储库在 hgweb 的配置中被指定为 UNC 路径,并且该钩子使用 cmd.exe 不支持的 UNC 路径执行 cmd.exe。

是否可以指定不同的 shell 来运行?

4

2 回答 2

2

据我所知,你不能告诉 Mercurial 在 Windows 上使用不同的 shell(但我认为你可以在 Linux 主机上)

相反,您可以让您的钩子脚本调用到不同的 shell,并让该 shell执行另一个脚本或一组命令。这很混乱,但不幸的是,Windows 并不以提供出色的脚本支持而著称,尤其是与基于 *nix 的平台相比时。

于 2012-01-18T15:04:05.457 回答
2

Mercurial hooks 有两种定义方式

  1. 作为壳钩(外钩)
  2. 作为 python 钩子(在进程钩子中)

如果您将其更改为 python 钩子,那么您显然将拥有 python 的全部功能来做事。当然,没有理由不能像 cdeszaq 建议的那样用任何语言编写程序并从外部挂钩执行它

于 2012-01-18T15:56:05.767 回答