Mercurial预合并钩子

时间:2012-10-18 15:56:26

标签: c mercurial merge

在Mercurial中允许合并之前,有没有办法进行一些检查?

我找到了更新前的挂钩,并在允许更新之前运行了一个脚本,方法是将以下内容添加到~/.hg/hgrc

[hooks]
pre-update = ~/hg_pre_update.sh

但是我想在允许合并之前运行检查,目前它只允许合并通过而不运行我的检查。

背景

如果有其他方法可以解决问题......

我们在Mercurial的“丢失”编辑中遇到了一些问题。我现在已将其中的大部分内容追溯到相同的根本原因:有人将vim编辑会话打开,而他们或其他人进行hg更新或合并。编辑器警告文件已在外部更改,用户忽略警告并保存其更改。

当提交这些更改时,Mercurial没有任何争议。用户只是简单地恢复了上次更新带来的所有更改,并进行了自己的更改。

一段时间后,我们注意到代码已经走了。提示各种各样的侮辱抛出了善变的方式......

2 个答案:

答案 0 :(得分:1)

如果没有本地更改,请将vim设置为自动加载更改。 (否则要求,或强制合并)

我如何在任何编辑器中避免此类问题...

答案 1 :(得分:1)

很抱歉,我们得到的pre-merge挂钩与pre-update的挂钩效果相同。我在问这个问题之前尝试了一下,但现在只是看着我的hgrc,我意识到我把脚本调用了那个不存在的~/hg_pre_merge.sh挂钩。

我无法在任何地方找到合并前的存在,但现在仍感觉像是一个布偶。

Feeling like a bit of a muppet now.