git post-receive hook将文件从bare repo写入www文件夹msysgit(windows)

所以我有两个Windows机器,我基本上试图用git来pipe理一些web文件我在远程机器上有一个裸存储库,在本地机器上有一个克隆版本,并且我已经把一些文件推送到远程存储库。

我希望将文件部署到post-receive事件的目录c:\ UniServer \ www \ Scripts这里是我的post-receive文件的内容:

#!/bin/sh GIT_WORK_TREE=/c/UniServer/www/Scripts git checkout -f 

我的repo存储在c:\ repos \ scripts.git \我已经设置了权限c:\ repos \ scripts.git \ hooks \ post-receive到+ x使用chmod和我使用gitstack( http:// gitstack .com )pipe理存储库。

问题是当我在本地推送一个提交时,文件没有在远程服务器上更新,有没有办法logging钩子中发生了什么,或者只是让它工作:)

更新: apache服务器有这个错误:[sat Feb 02 20:04:53 2013] [错误] [客户端xx.xx.xxx.xxx]错误:不能产生钩子/ post-receive:没有这样的文件或目录。 C:\回购\ scripts.git \钩子\ post-receive确实存在,这让我觉得这是一个权限错误

我有一个相同的问题,什么解决了我的问题是让GitStack服务作为本地用户帐户而不是本地系统运行。 无论您使用哪个帐户,都需要读取/写入资料库文件夹的权限,但我不确定可能需要其他权限; 我只是使用本地管理员帐户进行测试。

希望有所帮助!