Git子模块:是否可以通知其他开发人员更改?

时间:2013-03-13 21:05:43

标签: git git-submodules

假设我修复了多个项目使用的公共子模块中的错误。

有没有办法自动通知所有超级项目的开发人员更新子模块?

2 个答案:

答案 0 :(得分:2)

  

有没有办法自动通知所有超级项目的开发人员更新子模块

没有。
子模块是上游仓库的克隆,嵌套在父仓库中 与您作为子模块克隆的原始仓库相比,它是下游仓库。

在分布式环境中,您根本不知道下游回购 您只知道上游回购 请参阅“Definition of “downstream” and “upstream””。

如“Update git submodule”中所述,您需要直接进入子模块git pull以更新所述子模块。

答案 1 :(得分:1)

您可以添加提交后hook来发送电子邮件。

您可以使用(bash语法)

获取分支上所有提交者的电子邮件
git log --pretty:format="%ce" | sort | uniq

或者,强制开发者

git pull --recurse-submodules

每次拉动时始终在所有子模块的最新版本上。如果推动了突破性更改,可能会或可能不是一个好主意,具体取决于您希望如何强制执行此操作。