自动mercurial提交和推入构建

时间:2015-02-24 18:08:37

标签: build mercurial

我有一个构建过程,包括对文件进行更改并将它们提交给源代码控制。 我正在使用mercurial,并试图弄清楚如何最好地做到这一点。 问题是该进程在开始时从主存储库中拉出并在结束时推回(大约2小时后)。如果有人在此期间对存储库进行了更改,则推送将失败,因为它正在创建另一个头。 显而易见的解决方案是在推送之前进行拉动和合并,但理论上即使在这个较小的时间窗口中,某人仍然可以进行更改。

处理这种情况的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

通常,源控制用于人类输出而不是构建工件。考虑将构建工件放入专用工件存储库或单独的存储库中。如果这不可行,可能将构建合并default放入ci分支,执行构建,并提交到ci。然后,您将始终在构建代码之后立即从构建中获取提交,并且您可以从部署中的ci分支获取。