Heroku提供了一个漂亮的deploy to from github to heroku automatically:
但它也说:
使用子模块的GitHub repos通常无法在Heroku上正确部署。这是因为当生成repo-content tarball时,GitHub不包含子模块内容。
这是否意味着如果我有子模块就没有解决方法?
目前该功能只是无用。
我发现他们的信息非常简短,特别是当他们actually recommend to use submodules时。
他们不能触发git push heroku master
吗?和/或至少保留以前的子模块内容(以便在子模块不变时工作,这是99%的情况)。或者我应该提供对heroku的子模块内容的访问权限吗?
我们将不胜感激。
答案 0 :(得分:3)
实际上,GIT推送不是使用GitHub Sync时执行的操作。相反,使用了platform api 该API端点采用tarball URL并将其部署在应用程序上。
GitHub提供的tarball不包含GIT存储库的内容。只有应用程序。因此,无法检索该内容并在那里包含存储库。
我已经设置了一个buildpack,它会为你做这件事: https://github.com/dmathieu/heroku-buildpack-submodules
它将解析您的.gitmodules
内容并在构建期间安装所有子模块,而不是关心是否存在.git文件夹。