【问题标题】:How to add sub-modules to github repository如何将子模块添加到 github 存储库
【发布时间】:2017-04-06 19:34:43
【问题描述】:

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

虹膜

https://github.com/kataras/iris

我试过了

git add *
git add .

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

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

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

任何关于如何将这些子模块添加到我的仓库的想法将不胜感激。

【问题讨论】:

标签: git heroku github git-submodules


【解决方案1】:

添加子模块的命令是

git submodule add <your another repo url>

参考git-submodule

【讨论】:

    【解决方案2】:

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

    你需要:

    • 确保该嵌套 g​​it 存储库中没有待处理的更改(所有内容都已提交并推送到嵌套存储库远程 url)
    • git rm --cached nested_repo_root_folder(没有斜线)
    • 完全删除嵌套的 repo 根文件夹及其内容

    然后,您可以将该嵌套存储库添加回 full-fledged submodule

    git submodule add -- /url/nested/repo
    

    【讨论】:

    • @Yoni Rabinovitch,你有解释为什么 git subtree 从长远来看更容易使用吗?
    【解决方案3】:

    你确定你的用例需要使用 git submodule 吗?我建议您改为考虑git subtree。根据将两者与部署到 Heroku 的 repos 结合使用的经验,我可以告诉你 git subtree 更容易长期使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-29
      • 2021-10-03
      • 1970-01-01
      • 2017-01-03
      • 2022-01-28
      • 2011-11-04
      相关资源
      最近更新 更多