代码之家  ›  专栏  ›  技术社区  ›  Emmanuel Caradec

在VisualC++中使用增量重建来生成发布版本是否安全?

  •  1
  • Emmanuel Caradec  · 技术社区  · 16 年前

    我有时在VisualC++(2003当前)上进行增量重建。有些依赖项似乎没有正确检查,有些文件没有在应该的时候生成。我认为这些问题来自于增量重建的时间戳方法。

    在我的办公桌上构建调试构建时,我不认为这是一个大问题,但是对于可分发的构建,这是一个问题。

    为生成服务器使用增量生成是安全的还是完全生成是必需的?

    4 回复  |  直到 15 年前
        1
  •  2
  •   Scott Langham    16 年前

    如果用户遇到需要调查的问题,您需要一个不可信的构建来重新创建。

    我不会依赖增量构建。另外,在构建一个版本之前,我总是从构建机器中删除所有的源代码,并从源代码管理系统中重新获取它。这样,您就知道可以通过获取相同的源代码再次重复构建过程。

    如果使用增量构建,则每次构建都会有所不同,因为只需要构建系统的一个子集。我认为最好尽可能消除发布版本之间的差异。因此,出于这个原因,增量构建已经过时了。

    最好给源代码管理系统中每个源文件的版本贴上标签,或者用版本号来标记它们的版本。这使您能够跟踪构建版本的确切源代码。有了一个不错的源代码控制系统,标签可以用来跟踪在一个版本和下一个版本之间对代码所做的所有更改。当试图跟踪在两个版本之间引入的bug时,这是一个真正的帮助。

    当您不分发构建时,增量构建在开发机器上仍然有用,这只是为了节省代码/debug/test/repeat开发周期中的时间。

        2
  •  2
  •   MSalters    16 年前

    我认为你应该避免“是否安全”的问题。这根本不值得调查。

    增量构建的优点是节省成本。每一个构建都很小,它会对开发人员通常进行的所有调试构建进行累加,然后对团队中的所有开发人员进行进一步累加。

    另一方面,发布版本很少。发布构建的成本不在等待它们的开发人员身上,而是在需要验证它的测试人员团队中发现了更多的成本。

    出于这个原因,我发现增量构建无疑会为调试构建节省成本,但我拒绝花费任何时间计算增量构建发布构建所节省的少量成本。

        3
  •  2
  •   Stu Mackellar    16 年前

    如果没有其他的事情,我宁愿做一次彻底的清理和重建,以换取心灵的安宁。假设您谈论的是外部发布的构建,而不仅仅是使用发布配置的构建,那么这些构建相对较少的事实意味着从长远来看,任何时间节省都是最小的。

        4
  •  0
  •   John Källén    16 年前

    使用增量构建特性构建的二进制文件将越来越大,速度也越来越慢,即使是对于发布构建,因为它们必须包含脚手架,以支持完全优化构建不需要的增量构建。因此,我建议您不要使用增量构建。