是否可以在Mercurial中指定挂钩时指定要使用的Windows shell?

时间:2012-01-18 14:59:59

标签: mercurial mercurial-hook

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

是否可以指定另外运行的shell?

2 个答案:

答案 0 :(得分:2)

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

相反,您可以让您的钩子脚本调用另一个shell并让该shell 执行另一个脚本或一组命令。这很麻烦,但不幸的是Windows并不知道有很好的脚本支持,特别是与基于* nix的平台相比时。

答案 1 :(得分:2)

Mercurial hooks can be defined two ways

  1. 作为shell钩子(外挂钩)
  2. 作为python hook(在进程挂钩中)
  3. 如果你把它改成python钩子,那么你显然可以使用python的全部功能来做东西。当然没有理由你不能用任何语言编写程序并从外部钩子执行它,如cdeszaq建议的那样