我们开发了一个数据处理工具,可以从给定的原始数据中提取一些科学结果。在数据科学中,能够重新获得结果并重复导致结果集的计算非常重要。
由于该工具正在不断发展,我们需要找到一种方法来确定哪个修订版本/构建版本生成了给定的结果集,并找到生成该工具的相应源代码。
该工具是用C++和Python编写的,使用Boost::Python将C++部分粘合在一起。我们使用CMake作为构建系统,在Linux上生成Make文件。目前,项目存储在子版本库中,但我们中的一些人已经在使用git resp. hg,并计划在不久的将来将整个项目迁移到其中之一。
在这种情况下,获取源代码、二进制文件和结果集之间的唯一映射的最佳实践是什么?
我们已经讨论过的一些想法: - 在全局注入修订号 - 使用构建号生成器 - 将整个源代码存储在可执行文件内
由于该工具正在不断发展,我们需要找到一种方法来确定哪个修订版本/构建版本生成了给定的结果集,并找到生成该工具的相应源代码。
该工具是用C++和Python编写的,使用Boost::Python将C++部分粘合在一起。我们使用CMake作为构建系统,在Linux上生成Make文件。目前,项目存储在子版本库中,但我们中的一些人已经在使用git resp. hg,并计划在不久的将来将整个项目迁移到其中之一。
在这种情况下,获取源代码、二进制文件和结果集之间的唯一映射的最佳实践是什么?
我们已经讨论过的一些想法: - 在全局注入修订号 - 使用构建号生成器 - 将整个源代码存储在可执行文件内