2016-10-27 8 views
0

私は私たちのローカルネットワーク上でgitで実行するプッシュ - 展開ワークフローを取得しようとしています。Gitはポスト受信ウィンドウで実行されていません

  • D:/gitTest/remote/test-01.git(裸のリポジトリ)
  • D:/ gitTest /ローカル/テスト私は私のローカルマシン上で次のリポジトリ(Windows 7の)を作成し始めるために、 -01私は、私はそれがフォルダに展開するリモートリポジトリにプッシュすると

(リポジトリの作業):

  • D:/ gitTest /リモート/テスト01_live

ローカルリポジトリとリモートリポジトリ間をプッシュ&プルすると、ローカルプッシュプッシュフック(エコーだけ)が呼び出されます。

ただし、リモートリポジトリのフックが受信後に実行されていません。

ファイルテスト01.git /フック/ポストレシーブ含まれています

#!/bin/sh 
echo "Script started" 
git --work-tree=/d/gitTest/remote/test-01_live --git-dir=/d/gitTest/remote/test-01.git checkout -f 
echo "Script ended" 

私はGitのはbash経由でファイルを手動で実行した場合、それが正常に動作します。同じ結果を試しました:

GIT_WORK_TREE=/d/gitTest/remote/test-01_live git checkout -f 

ローカルマシンのベアリポジトリにプッシュすると、受信後のフックがトリガーされますか?または、いわゆる "サーバーフック"は実際にgitサーバーが必要ですか? フックがトリガーされない理由は何ですか?

乾杯!

+1

_ "test-01.git/hooks/post-recieve" _これは実際のファイル名ではなく、あなたの投稿の入力ミスですか? post_recieveではなく、__post-receive__でなければなりません。 – 1615903

+0

また、Windowsには実行可能ビットのようなものがありますか?だからあなたは 'chmod + x'フックをする必要がありますか? –

+0

いいえ、私の知る限り、WindowsにはUNIXのような実行可能ビットはありません。 とにかく試したchmodですが、違いはありません。 – eleleleven

答えて

0

フックとファイルの名前はpost-receiveでなく、post-recieveである必要があります。

関連する問題