飞跃高山与大洋的鱼飞跃高山与大洋的鱼
首页
先看
计算机
  • 数学
  • Linux
  • Arch
  • Manjaro
  • Ubuntu
  • CentOS
  • Kubernetes
  • Web
  • JavaScript
  • TypeScript
  • CSS
  • Canvas
  • Vue
  • Vite
  • NuxtJS
  • Webpack
  • Flutter
  • D3
  • Jest
  • WeApp
  • Utils
  • Nodejs
  • Nestjs
  • Golang
  • Nginx
  • Traefik
  • MySQL
  • MongoDB
  • Redis
  • Docker
算法
  • 像素风
  • Git
  • Github
  • VSCode
  • Chrome
  • Google
  • Bookmark scripts
  • 导航 🎉
  • VuePress 侧边栏插件
  • VuePress 官网
🚇 开往
首页
先看
计算机
  • 数学
  • Linux
  • Arch
  • Manjaro
  • Ubuntu
  • CentOS
  • Kubernetes
  • Web
  • JavaScript
  • TypeScript
  • CSS
  • Canvas
  • Vue
  • Vite
  • NuxtJS
  • Webpack
  • Flutter
  • D3
  • Jest
  • WeApp
  • Utils
  • Nodejs
  • Nestjs
  • Golang
  • Nginx
  • Traefik
  • MySQL
  • MongoDB
  • Redis
  • Docker
算法
  • 像素风
  • Git
  • Github
  • VSCode
  • Chrome
  • Google
  • Bookmark scripts
  • 导航 🎉
  • VuePress 侧边栏插件
  • VuePress 官网
🚇 开往
  • GIT

    • 版本控制工具 Git
    • 规范 Git 提交信息并生成日志
    • Git 忽略跟踪的文件
    • 多仓库工具 Repo
    • Git 使用子模块
      • 使用 submodule
      • 移除 submodule

Git 使用子模块

当希望某个项目依赖于另外一个项目,虽然有 lerna 的方案可以选择,但若希望它具有独立的 issue、feature 管理,那么可能需要 multi-repo 的形式。

而 submodule 可以做到该行为。

使用 submodule

git submodule -h

git submodule [--quiet] add [-b <branch>] [-f|--force] [--name <name>] [--reference <repository>] [--] <repository> [<path>]

移除 submodule

安装很简单,但是删除则有些步骤了。

# 1. 移除 submodule
git submodule deinit -f /path/module_name

# 2. 从跟踪中移除
git rm -f /path/module_name

# 3. 移除 .git 记录
rm -rf .git/modules/path/module_name
编辑文档!
上次更新:
贡献者: shanyuhai123
Prev
多仓库工具 Repo