1

我目前被无情地摒弃了简单且看似必要的前提,即如果您遵循文档,事情就会像广告宣传的那样工作。虽然我确实知道情况并非总是如此,但最近我一直受到此类 WTF 洪流的困扰。

让狙击手高兴的第一件事是,是的,这与 hg 关键字有关。具体来说,确保它们在提交之前总是被缩小。我发现 precommit 钩子hg kwshrink不起作用,因为 hg 锁定了目录,所以下一个候选者是[encode]过滤器。

[encode]
#1 **.cs = sed -e "s/\$Date.*\$/\$Date\$/g"
#2 **.cs = tempfile: C:\batch\hg-kwshrink.bat INFILE OUTFILE

我从 #2 开始,但 #1 也不起作用,我的批次很简单

sed -e "s/\$Date.*\$/\$Date\$/g" %1 > %2
rem sed -e "s/\$Date.*\$/\$Date\$/g" %1 > %1.tmp
rem echo %1 >>C:\temp\sed1.txt
rem echo %2 >>C:\temp\sed2.txt
rem copy %1.tmp C:\temp\sed3.txt
rem copy %1.tmp %2 /y

rems 显示我的调查。

看起来一切正常,除了 hg 没有使用我的输出,它只是提交原始文件,就好像它从未阅读过关于它应该如何表现的文档一样。

显然我错过了一个魔法咒语,或者需要重新评估我在这里的职业选择。

4

1 回答 1

0

尝试

sed -e "s/\\$Date.*\\$/\\$Date\\$/g"

或者

sed -e 's/\$Date.*\$/\$Date\$/g'

\ 被替换为双引号之间

于 2013-11-03T09:06:45.807 回答