Git - 创建参数更新的快照

Git - creating snapshots of parameter updates

我目前是 Git 的新手,对 Git 有非常基本的工作知识。我看到了使用它的潜力,但目前不确定下面我的查询所采用的路径。

Background:

我有一个 code/master 源代码,它在很长一段时间内保持相对不变。然而,在每个月底,我都会获取源代码,进行许多手动“参数”更新——例如:日期、标志、user_id、数据集名称、数据集过滤器等,以及 运行源代码。 (见图)

What I need:

我想在每个快照中保存新 "parameters" 设置的一个实例。参数设置(例如日期、数据集名称、开始日期、结束日期等)手动输入到调用源代码的 "main" 程序中。如果有人请求历史代码 运行,这是必需的。例如:如果今天(2018 年 7 月)有人要求重现 Feb/2018 的数据,那么我只想恢复到 Feb/2018 和 运行 的“参数”设置] 代码。

参数更改应该也不会合并回源代码,即使它是一个错误 fix/Hot 修复/额外开发。但是,注意每个快照之间“参数”更新的差异会很好。

解决此问题的最佳方法是什么?您会使用哪些命令? – 逐步的“git”命令程序会有所帮助。

如果您需要修改输入数据,则必须以 "revisionable" 方式提供。这意味着它们需要序列化为一个文件,该文件可以签入 git.

如果满足该要求,我将为每个 "run" 创建一个分支,其中 "parameter file" 是唯一的变化:

a - b - f - g - h- i -> master
    \-  c -> run1   \-  j -> run4
     \- d -> run2    k ->    run5
      e ->  run3

如果您想将源代码与参数设置分开,我会将这些值存储在单独的配置文件中。例如:

./src
  ./<all your source code>
./conf
  ./parameters.conf

而且,如果您想跟踪参数的更改,则必须将配置文件与源代码一起提交到 git 存储库。

对于每个快照,您将使用新值更新 conf 文件,然后将其提交回存储库:

git add conf/parameters.conf

然后您可以 tag 提交,以便将来可以检索它:

git tag -a snapJun2018 -m "Snapshot for June 2018"
git push --tags origin

然后您可以使用标签名称检索历史快照:

git checkout snapJun2018

并列出所有标记的提交:

git tag