1

したがって、私は2つのWindowsマシンを持っています。基本的に、いくつかのWebファイルをgitで管理しようとしています.リモートマシンにベアリポジトリがあり、ローカルマシンにクローンバージョンがあり、いくつかのファイルをリモートリポジトリにプッシュしました.

受信後イベントでファイルをディレクトリ c:\UniServer\www\Scripts にデプロイする必要があります。受信後ファイルの内容は次のとおりです。

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

私のレポは c:\repos\scripts.git\ に保存されています。chmod を使用して c:\repos\scripts.git\hooks\post-receive のアクセス許可を +x に設定し、gitstack を使用しています ( http://gitstack .com ) リポジトリを管理します。

問題は、コミットをローカルにプッシュしたときにリモートサーバーでファイルが更新されないことです。フックで何が起こったのかをログに記録する方法や、単にそれを機能させる方法はありますか:)

更新: Apache サーバーに次のエラーがあります: [2013 年 2 月 2 日 20:04:53] [エラー] [クライアント xx.xx.xxx.xxx] エラー: フックを生成できません/受信後: そのようなファイルまたはディレクトリはありません。C:\repos\scripts.git\hooks\post-receive が存在するため、これはパーミッション エラーだと思われます

4

1 に答える 1

1

私は同じ問題を抱えていましたが、問題を解決したのは、GitStack サービスをローカル システムではなくローカル ユーザー アカウントとして実行することでした。もちろん、どちらのアカウントを使用しても、リポジトリ フォルダーへの読み取り/書き込みアクセス許可が必要ですが、他にどのようなアクセス許可が必要になるかはわかりません。テスト目的でローカル管理者アカウントを使用しました。

それが役立つことを願っています!

于 2013-03-21T22:17:59.480 に答える