How can I add a specific folder from a git repo as a git submodule?

后端 未结 3 951
庸人自扰
庸人自扰 2020-12-24 01:00

I have a git repo and I want to add a submodule to it. Problem is, the submodule exists as a folder inside another repo. Can I add only that folder as a submodule?

相关标签:
3条回答
  • 2020-12-24 01:45

    If you really need to include part of an other repository within the history of your own repo, then the subtree merge strategy is more adequate than submodules.

    But in both case, the full repository is linked to your repo, not just one directory.
    And partial cloning is not possible.

    You could try and isolate that directory in its own repository, and then add it as a submodule, but that means its history will be totally seperated from the repo its was coming from originally.

    0 讨论(0)
  • 2020-12-24 01:50
    1. Create new branch
    2. Move required files to new branch
    3. Add sub module to super repository
    4. Checkout sub-module to new branch
    0 讨论(0)
  • 2020-12-24 01:59

    I ended up doing this:

    1. Create a submodules directory.
    2. Add the submodule in this directory.
    3. Create a symlink to the specific directory inside the submodule.

    This way you have default Git submodule behaviour and in your project you only use a subset of the whole submodule.

    0 讨论(0)
提交回复
热议问题