← ClaudeAtlas

git-submodulelisted

Manage Git submodules for including external repositories within a main repository. Use when working with external libraries, shared modules, or managing dependencies as separate Git repositories.
aiskillstore/marketplace · ★ 329 · Code & Development · score 82
Install: claude install-skill aiskillstore/marketplace
# Git Submodule ## When to use this skill - Including external Git repositories within your main project - Managing shared libraries or modules across multiple projects - Locking external dependencies to specific versions - Working with monorepo-style architectures with independent components - Cloning repositories that contain submodules - Updating submodules to newer versions - Removing submodules from a project ## Instructions ### Step 1: Understanding submodules Git submodule is a feature for including other Git repositories within a main Git repository. **Key concepts**: - Submodules lock version by referencing a specific commit - Submodule paths and URLs are recorded in the `.gitmodules` file - Changes within a submodule are managed as separate commits ### Step 2: Adding submodules **Basic addition**: ```bash # Add submodule git submodule add <repository-url> <path> # Example: Add library to libs/lib path git submodule add https://github.com/example/lib.git libs/lib ``` **Track a specific branch**: ```bash # Add to track a specific branch git submodule add -b main https://github.com/example/lib.git libs/lib ``` **Commit after adding**: ```bash git add .gitmodules libs/lib git commit -m "feat: add lib as submodule" ``` ### Step 3: Cloning with submodules **When cloning fresh**: ```bash # Method 1: --recursive option when cloning git clone --recursive <repository-url> # Method 2: Initialize after cloning git clone <repository-url> cd <repository> git submodul