2

Webサーバーに数行しかないPHPスクリプトgit.phpがあり、そのうちの1行はshell_exec()を使用して

'git pull ssh://user@X.com/repo.git'

(Webサーバーにプッシュすることはできません。これは無効であり、有効にすることはできません。) example.com/git.phpにアクセスすると、これはすべて正常に機能します。スクリプトが実行され、リポジトリが更新されます。(リポジトリは別の無関係なサーバー上にあります)

私がやろうとしているのは、受信後のフックを使用して、Webサーバー上のgitリポジトリをgitサーバーから更新することです。私はsshを使用して接続しているので、フックは機能するはずです(そして機能します、私はそれをテストしました)、そしてパーミッションの問題がないことをかなり確信しています。

私の質問は、「受信後」スクリプトをどのように作成するかです。

私は運が悪かったいくつかのことを試しました、私のスクリプトは現在1行の長さで、次のようになります

curl -d "action = post-receive&log = 1" http://example.com/git.php

しかし、これは何もしません。:(

私を助けてくれる人はいますか?または、私がもっとうまくできることを提案しますか?前もって感謝します。

4

0 に答える 0