我正在尝试在我工作的公司实施 Mercurial。以前我们使用 ClearCase,但出于各种原因我们决定升级到 Mercurial。开发团队非常习惯于 ClearCase 工作流程,尤其是可视化工具。因此,对于 Mercurial 的实现,我们将使用 TortoiseHg。
引起我注意的一个 Mercurial 扩展是 Fetch 扩展,它允许在必要时执行“hg pull -u”,然后执行“hg merge”和“hg commit”。该扩展基本上可以满足我们的需求,并与 TortoiseHg 完美集成,将其配置为自动运行“Post Pull”。
唯一的问题是 Fetch 扩展不允许在运行提交之前编译和测试合并。然而,使用带有“hgtk merge -r tip”的 TortoiseHg 合并对话框,有一种可视化的方式来运行合并命令,但优点是允许我编译和运行测试。如果一切顺利,我按下 Commit 按钮,但如果出现问题,只需按下 Undo,一切都恢复如初。
TortoiseHg 合并对话框:http ://www.freeimagehosting.net/uploads/a2f43fe5ff.png
所以,我的问题是: 是否可以将 Mercurial Fetch 扩展与 TortoiseHg 合并对话框一起使用?
如果不可能,您会如何建议实施此工作流程?有没有办法为这个 secuence 分配一个别名:
hg pull -u
* if merge is needed *
hgtk merge -r tip
我不确定您是否可以在别名中使用“if”,但我认为不会。