如何将子模块添加到github存储库

时间:2016-11-22 23:25:10

标签: git heroku github git-submodules

您好我正在寻找一种方法将我的子模块添加到我的github仓库中,例如

  

虹膜

https://github.com/kataras/iris

我试过

Operation   ||  Result precision                    ||  Result scale 
 e1 + e2    ||  max(s1, s2) + max(p1-s1, p2-s2) + 1 ||  max(s1, s2)
 e1 - e2    ||  max(s1, s2) + max(p1-s1, p2-s2) + 1 ||  max(s1, s2)
 e1 * e2    ||  p1 + p2 + 1                         ||  s1 + s2
 e1 / e2    ||  p1 - s1 + s2 + max(6, s1 + p2 + 1)  ||  max(6, s1 + p2 + 1)
 e1 % e2    ||  min(p1-s1, p2 -s2) + max( s1,s2 )   ||  max(s1, s2)

然后提交并推送,但文件夹保持空白(灰色)

我想添加这些子模块的原因是因为我想在heroku上部署我的应用程序。

但是由于子模块没有上传到我的github仓库,我无法部署我的heroku应用程序,因为它从我的github存储库中遗漏了它们。

有关如何将这些子模块添加到我的回购中的任何想法都将非常感激。

3 个答案:

答案 0 :(得分:2)

添加子模块的命令是

git submodule add <your another repo url>

请参阅git-submodule

答案 1 :(得分:1)

你真的确定你需要在你的用例中使用git子模块吗?我建议您考虑使用git subtree。根据与部署到Heroku的repos结合使用的经验,我可以告诉你,git子树更容易长期使用。

答案 2 :(得分:0)

如果你添加一个嵌套的git repo,你将获得一个灰色文件夹(gitlink)而无法检索其内容。

你需要:

  • 确保嵌套的git repo中没有挂起的更改(所有内容都已提交并推送到嵌套的repo远程URL)
  • git rm --cached nested_repo_root_folder(没有斜杠)
  • 完全删除嵌套的repo根文件夹及其内容

然后,您可以将嵌套的repo添加回full-fledged submodule

git submodule add -- /url/nested/repo