数百个二进制文件的软件配置管理工具,很多都很大

时间:2009-09-30 15:27:29

标签: configuration-management

注意:我试过搜索,Stackoverflows几乎没用。我不确定我需要什么样的工具。

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

我们正在尝试使用Mercurial来存储更改,但它太慢了,即使没有很多修改也是如此。我做了一个hg状态但是在没有完成的情况下花了10分钟就把它杀了。

我们正在寻找一种方法来存储当前配置以及具有旧配置以防万一。我之前从未做过这样的事情,也不知道有哪些工具可用,甚至不适合这类任务。有人可以指出我正确的方向或告诉我如何解决这个问题?感谢

2 个答案:

答案 0 :(得分:1)

由于硬盘空间很便宜并且能够查看二进制差异并不是很有用,也许最好的选择是将每个配置存储在以某种方式编制索引的新目录中。示例如下:

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

考虑到文件的大小和不经常更改的数量,这将允许您从给定的“标记”中选择配置,而无需修改控制的开销。

如果您将文件打包到一个tar文件中并生成 SHA-512 哈希,那么您可以合理地确定没有人因为归档而篡改了您的文件。

答案 1 :(得分:0)

虽然我不知道如何在mercurial中实现此策略的具体细节,但我一直在使用git和git-fat。它建立了一个可能在mercurial上可行的一般程序。基本上这个想法是每当你将二进制文件添加到存储库时,repo会创建一个符号链接到文件,该符号链接实际存储在另一个位置作为校验和对象。

这允许repo跟踪大文件,而不将实际数据存储在其中。它要求将数据存储在某些其他位置(可能在二进制管理系统中)。

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