为Windows编写post接收脚本

时间:2015-06-29 19:59:24

标签: git web-services windows-server-2012

我目前正在使用2012年的bonobo git web服务器。我想写一个post-recieve hook,以便我可以将我的repo检查到我网站的活动目录中。 我宣布我的收件后脚本

  #!/bin/sh
  GIT_WORK_TREE=C:/Domains/Demo.com git checkout -f

当我将更改推送到我的git服务器时,它现在应该将我的repo的内容签出到Domains / Demo文件夹中。在我更改了一件小事并提交到Web服务器之后,我检查了Demo.com的目录,看看是否有任何内容。可悲的是没有。有没有办法知道脚本是否正在运行?有没有更好的方法来解决这个问题?

1 个答案:

答案 0 :(得分:0)

您可以通过添加一些post-receive语句来测试是否执行了echo挂钩。来自githooks documentation

  

标准输出和标准错误输出都转发到另一端的git send-pack,因此您只需为用户发送echo条消息。

此外,我建议使用--work-tree选项而不是GIT_WORKING_TREE环境变量。脚本的修改版本如下所示:

#!/bin/sh
git --work-tree="C:/Domains/Demo.com" checkout -f