Git Dependency Management with Submodules and Subtrees
42mIntermediate2023-07-10
Authors

Manaswini Das
Course details
Does Git come to your mind when you hear the phrase “version control”? Do you know what Git is used for and how you can use it to manage multiple repositories from a single repository? In this course, software engineer Manaswini Das helps you discover and learn to use Git subtrees and submodules, the tools that enable you to manage multiple repositories from a single repository. Manaswini explains how Git submodules and subtrees can help you with in-house dependency management. She also reviews the caveats, differences, and applications—for example, single-sourcing documentation and publishing documentation on various platforms. Plus, Manaswini highlights other alternatives like git-repo, git-subrepo, and gitslave that can help you achieve dependency management.
Skills covered
Visual Studio CodeGitAgile Software DevelopmentVersion ControlGitHubDevOps ToolsDevOpsSoftware Development ToolsOpen SourceMicrosoftSoftware DevelopmentOne-Off
Concepts
0. Introduction
- 01 - Git submodules and subtrees
- 02 - What you should know
1. Dependency Management
- 03 - Why do you do dependency management
- 04 - Dependency management with Git
2. Learning Git Submodules
- 05 - Introduction to Git submodules
- 06 - Git submodules in action on GitHub
- 07 - Git submodules in action in your terminal and VSCode
- 08 - More commands with Git submodules
- 09 - Challenge - Initialize and update submodules
- 10 - Solution - Initialize and update submodules
3. Learning Git Subtrees
- 11 - Introduction to Git subtrees
- 12 - Git subtrees in action on GitHub
- 13 - Installing Git subtrees
- 14 - Git subtrees in action in your terminal and VSCode
- 15 - More commands with Git subtrees
- 16 - Challenge - Squash with add, split subtrees
- 17 - Solution - Squash with add, split subtrees
4. Caveats, Differences, and Use Cases
- 18 - Caveats for subtrees and submodules
- 19 - Differences between subtrees and submodules
- 20 - Applications and use cases
Conclusion
- 21 - Alternatives and resources for further reading
Related courses
Related learn paths
- Prepare for the Designing and Implementing Microsoft DevOps Solutions (AZ-400) Exam
- Become a MEAN Javascript Developer
- Getting Started with DevOps
- Getting Started as an ASP.NET Core Developer
- Get Ahead in DevSecOps
- Become a Full-Stack Web Developer
- Software Development Fundamentals
- Continuous Integration/Continuous Delivery (CI/CD) with Jenkins