管理许多小git实例的最佳方法

时间:2015-09-24 19:00:11

标签: git distributed

我的分布式应用程序在大量主机上运行,​​每个应用程序实例都有少量相似但不同的配置文件。我想开始在git中跟踪这些配置文件。

主要工作流程将由支持人员编辑分布式主机上的文件,在本地提交更改,并定期将这些更改推送到中央位置/存储库,以便我们以后可以恢复它们等等。

最好的方法是什么?蛮力的方式是为每个分布式主机创建一个上游回购,并以1:1的方式向/从它们推/拉,但这感觉就像很多开销/麻烦/管理员,因为每个文件中跟踪的文件很少回购。有没有办法让一个中央仓库,例如,与每个主机的实例相关的子目录?我知道如何在颠覆中做到这一点(也许我的想法完全错了,因为我太受那个模型的影响了),但是我坚持用git做这个的最佳方法。

1 个答案:

答案 0 :(得分:0)

子目录 - 没有。这些在Git数据模型中绝对没有特殊含义(实际上没有任何意义,因为甚至无法在Git控件下添加空目录)。

但是我只是在同一个存储库中为每个主机使用单独的分支:比如,host" foo"推动它唯一的分支,它推出了远程分支" foo",就像在

git push origin master:foo

如果您认为您需要为每个主机分配多个分支,只需要"命名空间"你的目标"通过为它们添加前缀来分支:例如,主持人" foo"会推动自己的分支机构#34; yadda"进入" foo / yadda",就像在

中一样
git push -u origin yadda:foo/yadda

(使用-u可以简化下一步:git push origin yadda - 请研究git-push手册页。)

为了使所说的内容更清楚,只有政策才会被推进:本地分支的名称不必与"目的地的名称相同。远程分支,反之亦然。