我可以像git一样跳过mercurial pre-commit hooks吗?

Ole*_*nko 2 git mercurial hook pre-commit pre-commit-hook

我想做一些像git commit --no-verifymercurial 这样的事情.有什么办法吗?

tor*_*rek 5

hg help config文档中所述:

...通过在操作中附加后缀,可以为同一操作运行多个挂钩. 可以通过更改其值或将其设置为空字符串来覆盖站点范围的挂钩. 可以通过添加"优先级"前缀来确定挂钩的优先级.到新行的钩子名称并设置优先级.默认优先级为0.

(强调我的).虽然这指的是"系统范围的挂钩",但它也适用于存储库内挂钩:

$ sed -n '/hooks/,+1p' .hg/hgrc
[hooks]
pre-commit = ./foo.sh
$ cat foo.sh
#! /bin/sh
echo foo
exit 1
$ hg commit
foo
abort: pre-commit hook exited with status 1
Run Code Online (Sandbox Code Playgroud)

显然我的预提交钩子正在工作.现在打败它:

$ hg --config hooks.pre-commit= commit
nothing changed
Run Code Online (Sandbox Code Playgroud)

(没有什么可以提交;覆盖预提交钩子工作).

当然,您需要知道要覆盖哪些特定的挂钩,因为可能有多个预提交挂钩.