【发布时间】:2013-03-02 01:06:14
【问题描述】:
假设我修复了多个项目使用的公共子模块中的错误。
有没有办法自动通知所有超级项目的开发者更新子模块?
【问题讨论】:
-
好吧,你可以添加一个钩子来发送电子邮件。无法通过 git 本身联系存储库的所有用户。
标签: git git-submodules
假设我修复了多个项目使用的公共子模块中的错误。
有没有办法自动通知所有超级项目的开发者更新子模块?
【问题讨论】:
标签: git git-submodules
您可以添加一个 post-commit hook 来发送电子邮件。
您可以使用(bash 语法)获取分支上所有提交者的电子邮件
git log --pretty:format="%ce" | sort | uniq
或者,强制开发人员
git pull --recurse-submodules
每次拉取时始终使用所有子模块的最新版本。如果推送了重大更改,这可能是一个好主意,也可能不是一个好主意,这取决于您希望如何强制执行。
【讨论】:
有没有办法自动通知所有超级项目的开发者更新子模块
没有。
子模块是上游仓库的克隆,嵌套在父仓库中。
与您克隆为子模块的原始存储库相比,它是一个下游存储库。
在分布式环境中,您根本不知道下游存储库。
你只知道上游仓库。
请参阅“Definition of “downstream” and “upstream””。
如“Update git submodule”中所述,您需要进入子模块并直接进入git pull 以更新所述子模块。
【讨论】: