Ser*_*sta 10 configuration mercurial development-environment mercurial-queue
对于那些使用Mercurial和MQ扩展的人:
这是我第二次意外地将更改提交到中央存储库(hg push
)而不是将补丁应用到我的工作目录(hg qpush
).
我认为这是非常不幸的,因为这是一个非常简单的错误,并且具有非常严重的后果(为了生成一个新的提交,"撤消"las的一个,所以至少不得不为每个提交的更改做一个hg backout
额外的操作hg push
.中央存储库,但历史变得令人费解和不愉快.
我的目标是在orden的环境中配置一些别名或其他东西,以便hg push
更加难以做到.
你有什么建议吗?我想的是:
[alias]
push= <-- how to NOP the push command??
pushtoserver=push
Run Code Online (Sandbox Code Playgroud)
由于这是一个完全主观的问题,这就像社区维基一样.
谢谢!
一些含糊的想法:
此挂钩(bash命令行)在将更改推送到远程控制器之前要求确认(使用mercurial 1.4测试):
[hooks]
preoutgoing.confirm = read -p 'Are you sure you want to push to remote? (y/n): '; echo $REPLY | grep -q 'y'
Run Code Online (Sandbox Code Playgroud)
小智 6
将以下内容放在.hgrc中:
[alias]
pushtoserver = push
push = 'Did you mean qpush or pushtoserver?'
Run Code Online (Sandbox Code Playgroud)
像这样工作:
$ hg push
alias 'push' resolves to unknown command 'Did you mean qpush or pushtoserver?'
$ hg pushtoserver
abort: repository default-push not found!
Run Code Online (Sandbox Code Playgroud)