代码之家  ›  专栏  ›  技术社区  ›  Rob Wells

使用标记或目录来混淆SCM中的平台版本?

  •  1
  • Rob Wells  · 技术社区  · 16 年前

    我们有一系列在构建Apache时使用的脚本。具体来说,这些脚本用于:

    • 修补普通源代码,
    • 修补客户特定功能,
    • 构建并安装Apache服务器,
    • 构建特定于客户的模块,以及
    • 创建一个自定义安装tarball,为最终部署做好准备。

    注意:tarballs和configs的部署由其他独立的机制来处理。这个系统创建安装tarball,并将其传递给操作人员,然后由操作人员处理到Web场的部署。

    我们有这些补丁和模块的版本用于:

    • 不同的操作系统和操作系统版本,以及
    • 不同的Apache版本。

    注意:不同的Apache版本通常只在测试和迁移到整个Web场的新Apache版本时存在。

    我现在已经将补丁和定制模块带到了cvs下,并且根据Apache发布版本对它们进行了标记。

    我应该保持标记的简单性并使用子目录来区分特定于Linux和特定于Solaris的元素吗?还是应该保留一个目录结构并使用更复杂的标记来区分不同操作系统的元素?

    我们目前正在使用cvs,并将迁移到svn。

    1 回复  |  直到 16 年前
        1
  •  1
  •   VonC    16 年前

    对于特定于平台的版本,它通常有助于:

    • 具有模板脚本(即包含变量的脚本)
    • 一个部署脚本,它将复制模板并用平台特定的数据(主机名、端口号、路径等)替换变量。

    对于所有类型的脚本来说,这并不总是可能的,但是如果差异是有限的,那么这种方法允许您使用:

    • 一个简单的标签
    • 一个简单的标签
    • 一个管理平台特定差异的中心位置(“部署”脚本)