首页 > 解决方案 > 为 git 子模块的最后一次提交运行 travis build

问题描述

我有一个包含子模块的 git 存储库。但是,每当我在子模块中提交时,它都不会影响 Travis。

它总是在旧版本的子模块上执行。这就是我得到的(隐藏真实数据):

git submodule update --init --recursive
Submodule 'mysubmodule' (https://github.com/xxxxx/myproject.git) registered for path 'somepath'
Cloning into '/home/travis/build/somepath'...
Submodule path 'somepath': checked out '01234567890abcdef':

旧提交在哪里01234567890abcdef,它不是最后一个推送。

标签: gittravis-cigit-submodules

解决方案


超级项目记录要在子模块中签出的确切提交。

如果您希望基于较新的子模块提交构建您的超级项目,则必须因此更新超级项目。向子模块添加新提交不会影响超级项目;只有向超级项目添加新提交才能影响超级项目。


推荐阅读