代码之家  ›  专栏  ›  技术社区  ›  Mark Stahler

用于数百个二进制文件的软件配置管理工具,其中许多是大型的

  •  2
  • Mark Stahler  · 技术社区  · 15 年前

    注意:我已经尝试过搜索,StackOverflows几乎是无用的。我不知道我需要什么样的工具。

    在我的组织中,我们需要跟踪许多类型计算机的软件配置,包括二进制安装程序和自动化脚本。更改很少,但最新版本配置的大小是几个gig。

    我们试图使用mercurial来存储更改,但是它太慢了,即使没有太多的修改。我做了一个Hg状态,但在10分钟后没有完成就杀了它。

    我们正在寻找一种方法来存储当前的配置,并在那里保留旧的配置,以防万一。我以前从未做过类似的事情,也不知道有什么工具可用,甚至不适合这样的任务。有人能指点我正确的方向或告诉我如何解决这个问题吗?谢谢

    2 回复  |  直到 9 年前
        1
  •  1
  •   Will Bickford    15 年前

    由于硬盘空间很便宜,并且能够查看二进制差异并不是很有帮助,所以最好的选择可能是将每个配置存储在一个新目录中,该目录以某种方式编制了索引。下面的例子:

    /software/configs/2009-03-15
    /software/configs/2009-09-28
    /software/configs/2009-09-30
    

    考虑到文件的大小和很少的更改次数,这将允许您从给定的“标记”中选择一个配置,而不会增加修订控制的开销。

    如果将文件打包到单个tar文件中并生成 沙-512 散列,然后你可以合理地确定,没有人篡改你的文件,因为他们被存档。

        2
  •  0
  •   NotsoDarkMatters    9 年前

    虽然我不知道如何在Mercurial中实现此策略的具体细节,但我一直在与Git和 git-fat . 它建立了一个一般的程序,可能是可行的汞以及。基本上,当您向存储库添加一个二进制文件时,repo会在引擎盖下创建一个指向该文件的符号链接,该文件实际上作为校验和对象存储在另一个位置。

    这使得大型文件可以由repo跟踪,而不必在其中存储实际数据。它要求将数据存储在其他位置(可能存储在二进制管理系统中)。

    在Mercurial中可能需要一些配置,但我认为这是一个非常简单的解决方案。