1

コミットを許可する前にチェンジリスト内のファイルの内容を検証するスクリプト (perforce トリガー) を書きたいと思います。ただし、私のスクリプトは Xsltproc を使用して XML を処理し、Jing を使用して検証します。断続的な出力を一時ファイルに保存する必要があります。これは、perforce のコンテンツ変更トリガー (サーバー側) を作成するときに実行できますか? たくさんのドキュメントを読みましたが、トリガー スクリプトの実行中に一時ファイルを作成するという言及は見たことがありません。他の唯一の回避策は、Xsltproc からの出力を Jing にパイプすることです (その方法もわかりません)。

経験豊富な XSLT または Perforce ユーザーからのアドバイスは歓迎します。ありがとう。

ところで、私は perl を使用していますが、それによって問題がさらに難しくなるとは思いません。

4

1 に答える 1

1

もちろん、一時ファイルを作成できます。トリガーに配置したい場所に書き込む権限があること、サーバードライブに十分なスペースがあること、衝突を回避するような方法でファイルに名前を付けることを確認してください(一時ファイル名を作成するためのPerlモジュールがあります) )、そして後でそれをクリーンアップすること(IIRC、適切なモジュールがあなたのためにそれを行います)。

ただし、トリガーの処理に長い時間がかかると、ユーザーにとって混乱を招き、恐らく恐ろしいものになることに注意してください。その場合、最初からブロックしようとするよりも、デーモンを使用してコミットループからファイルにアクセスし、ユーザーに修正してもらう方がよい場合があります。(これは、不良ファイルを修正するのにかかる限り許容できる場合に機能します。これは、あなたが行う必要のある呼び出しです。)

于 2013-01-28T18:30:46.483 に答える