如何将子模块粘贴到修复标签?

时间:2012-10-10 06:29:36

标签: git tags dependencies git-submodules

假设我们有两个模块superminor。模块super取决于模块v1.0.3的版本minor,而v1.0.3minor上带注释的标记:

        v1.0.3
super <-------- minor

模块minor有点“私有”,即只有极少数开发人员具有写访问权限,而其他开发人员只具有读访问权限。模块super是公开的。

现在我想使用Git子模块模拟模块super与模块minor的依赖关系。不幸的是,我无法弄清楚如何将依赖项修复为v1.0.3

此外,我还希望---将来的某个时间---将依赖项修复为另一个版本。

在所有情况下,我都希望如此 ...所有开发人员“自动”以正确的版本检索模块minor。 ...所有开发人员---但前面提到的小组---不允许修改这种依赖(这是一个小问题)

有什么想法吗?

干杯,  /纳米

1 个答案:

答案 0 :(得分:1)

首先,子模块引用提交(SHA1),因此记住正确SHA1的最简单方法是进入子模块并简单地git checkout v1.0.3,然后返回到父级仓库,提交并推送新状态:由于标记与提交相关联,因此您将推动子模块与该标记关联的事实 当您想要调整同一子模块的标签时,可以重复相同的过程。

关于修改该子模块的权利,一种控制方法是在Git服务器上添加authorization frameworkgitolite