コミット後のフックはsvnのどのユーザーとして実行されます

StackOverflow https://stackoverflow.com/questions/1620490

  •  06-07-2019
  •  | 
  •  

質問

SYSTEMとして実行されているWindowsマシン上のApache。
post-commit.batにはどのユーザーとパスワードを使用する必要がありますか?

Webサーバー上の開発者バージョンでテストするためにコンテンツをディレクトリにコピーしようとしていますが、動作していないようです。

役に立ちましたか?

解決

フックスクリプトはサーバーによって起動されるので、対応するユーザー(SYSTEMのユーザー)が持っていることを確認するだけで済みます

  • リポジトリへの読み取り/書き込みアクセス(すでにそうであるはずです)
  • フックスクリプトへの読み取り/実行アクセス

スクリプトの実行内容によっては、たとえばログを作成する場合-一般に他のリソースにアクセスする場合など、さらに必要になる場合があります。おそらくあなたが遭遇した問題でしょう。

また、フックスクリプトが.batの場合、シェルを見つけるには COMSPEC 環境変数が必要です(Windows XPでこの問題が発生しました。これは主に設定が不適切だったためです)。この変数は通常、 C:\ Windows \ system32 \ cmd.exe として定義されます。もちろん、 PATH も非常に重要です。

誤解を招く可能性があることに注意してください。別のユーザーログインでスクリプトをテストすると、サーバーIDにはない別のアクセス権が与えられる可能性があります。


編集:バッチスクリプトの開始時に、 PATH COMSPEC などの重要な環境変数を設定または展開できます。サーバーアカウントに何が含まれているかわかりません。たとえば、

SET ComSpec=%SystemRoot%\system32\cmd.exe
SET PATH=%PATH%;C:\Tools\SVN\svn-win32-1.4.6\bin

暗闇の中でサーバーのアカウントを変更しようとするよりも簡単な場合があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top