【发布时间】:2021-08-21 15:11:38
【问题描述】:
每次我将提交推送到子模块时,我都需要将父 repo 更新为子模块中的最新提交。有没有自动的方法在遥控器中做到这一点?
每次在子模块存储库中推送提交时,我希望父级自动指向子存储库的最新提交。请建议是否可能以及如何?
【问题讨论】:
标签: gitlab git-submodules
每次我将提交推送到子模块时,我都需要将父 repo 更新为子模块中的最新提交。有没有自动的方法在遥控器中做到这一点?
每次在子模块存储库中推送提交时,我希望父级自动指向子存储库的最新提交。请建议是否可能以及如何?
【问题讨论】:
标签: gitlab git-submodules
在子模块中使用 gitlab-ci,当子模块主分支的合并请求完成时,我能够触发父级自动更新父级中的主分支。
stages:
- build
build_job_dev:
stage: build
variables:
PLUGIN_NAME: coppercrm
trigger:
project: Plugins/parent
branch: development
only:
- master
我希望这可以帮助那些正在寻找子模块更新时更新父仓库的人
【讨论】:
如果您可以控制 GitLab 服务器,则可以考虑将post-receive 挂钩(custom hook)与远程子模块存储库关联,这将:
git submodule update --remote:这会将所有子模块更新为最新的master(默认)提交。但是如果是 gitlab.com,流程就比较复杂,会涉及到webhook。
这意味着您必须实现/安装一个侦听器,只要触发到远程子模块存储库的推送事件,该侦听器就会执行相同的操作。
【讨论】: