Windows 7 を実行し、.hgrc ファイルでコミット フックを構成します。
フックは、外部の PowerShell スクリプトを呼び出し、いくつかのパラメーターを渡します。すべてのパラメーターを 1 つの長い行に入れると、スクリプトはそれらを問題なく受け取ります。ただし、各パラメーターをそれぞれの行に配置しようとすると、フックはそれらがすべて外部スクリプトへの同じ呼び出しの一部であることを認識できません。
【フック】
commit.working_one_liner = PowerShell.exe -ExecutionPolicy Bypass -File .\MyScript.ps1 -hg %HG% -updatedToChangeset %HG_NODE% -dbName 'Test'
commit.multi_line_hook_not_working = PowerShell.exe
-ExecutionPolicy Bypass
-File .\MyScript.ps1
-hg %HG%
-updatedToChangeset %HG_NODE%
-dbName 'Test'
Hgのドキュメントによると、私はこれを行うことができるはずです:
「構成ファイルはセクションで構成され、[section] ヘッダーが先頭にあり、その後に name = value エントリ (構成キーと呼ばれることもあります) が続きます。
[spam]
eggs=ham
green=
eggs
各行には 1 つのエントリが含まれます。後続の行がインデントされている場合、それらはそのエントリの続きとして扱われます。先頭の空白は値から削除されます。空行はスキップされます。# または ; で始まる行 は無視され、コメントを提供するために使用される場合があります。」
インデントにもかかわらず、multi_line_hook は最初の行以降をすべて無視するようです。各改行の後にさまざまなエスケープ文字 (`、^、\ など) を試しました。私がここで見逃しているアイデアはありますか?