Working with Git Submodules
I often struggle when working with Git Submodules, so here’s a quick primer with all the important information you need!
Adding Submodules to your project
git submodule add repo_url [directory]
git commit -m 'added xyz as a dependency'
`git submodule add` works like `git clone`, so the directory name can be ommited. The changes will automatically be added to the index, so you can commit them right away!
Cloning a repository with Submodules
git clone repo_url --recursive
This will first clone the repo, and then initialize and update (read on) all submodules.
If you forget the `--recursive` flag when cloning, or when pulling in commits that add a Submodule, you have to do two steps: initialize, update:
git submodule init
git submodule update
This will create the required directories and then pull in the other repos.
Update Submodules
Easy:
git submodule update --remote
git add submodule_dir
git commit ...
That’s it!
For more in-depth information on Git Submodules, read the official documentation:
Git - Submodules
It often happens that while working on one project, you need to use another project from within it. Perhaps it's a…git-scm.com
It often happens that while working on one project, you need to use another project from within it. Perhaps it's a…git-scm.com
(first published on hutter.io)