我有一个系统设置,以便人们可以克隆服务器上的仓库,处理它,并在完成后将其推回服务器。然后,此repo对实际的“webfolder”执行git checkout
。
但是由于框架使用了它Laravel,并且可能是有人对composer.json文件进行了更改,我想在推送后立即运行composer update
(在'webfolder'上)
系统是Windows Server 2008 R2。
这可能吗?我试图在de post--receive hook中单独添加一些内容,但这不起作用:
#!/bin/sh
GIT_WORK_TREE=C:/inetpub/wwwroot/website git checkout -f
C:/inetpub/wwwroot/website composer update
修改
首先我根本没有输出,但是现在我输出C:/ inetpub / ...是一个文件,所以我将其更改为:
#!/bin/sh
GIT_WORK_TREE=C:/inetpub/wwwroot/website git checkout -f
cd C:/inetpub/wwwroot/website
composer update
但是这也行不通,因为现在我得到一堆错误的东西被转储到一个名为sh.exe.stackdump
的文件中。文件告诉我的唯一有用的东西是Exception: STATUS_ACCESS_VIOLATION
。所以我认为它与权限有关?