0

我有一个系统设置,以便人们可以在服务器上克隆一个 repo,对其进行处理,并在完成后将其推送回服务器。然后,此 repogit checkout对实际的“webfolder”执行操作。但由于该框架使用它 Laravel,并且可能有人对 composer.json 文件进行了更改,我想composer update在推送后立即运行(在“webfolder”上)系统是 Windows Server 2008 R2。

这可能吗?我试图在 de post-receive 钩子中单独放置一些东西,但这没有用:

#!/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. 所以我认为这与权限有关?

4

0 回答 0