【发布时间】:2015-03-04 18:09:18
【问题描述】:
运行 Windows 7,在我的 .hgrc 文件中配置提交挂钩。
钩子调用一个外部的 powershell 脚本并向它传递一些参数。当我将所有参数放在一行中时,脚本会很好地接收它们。但是,当我尝试将每个参数放在单独的行上时,钩子无法确定它们都是对我的外部脚本的同一调用的一部分。
[钩子]
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 documentation,我应该可以做到这一点:
“一个配置文件由多个部分组成,以 [section] 标头开头,后跟 name = value 条目(有时称为配置键):
[spam]
eggs=ham
green=
eggs
每一行包含一个条目。如果后面的行被缩进,它们被视为该条目的延续。从值中删除前导空格。空行被跳过。以 # 或 ; 开头的行被忽略,可用于提供 cmets。”
尽管有缩进,multi_line_hook 似乎忽略了第一行之后的所有内容。我在每个新行之后尝试了各种转义字符(`、^、\ 等)。有什么想法我在这里想念的吗?
【问题讨论】:
标签: powershell mercurial atlassian-sourcetree mercurial-hook hgrc