1. key cmds
1 | git clone --recurse-submodules |
2. Usage
添加submodule到当前项目
git submodule add <url> <path>
运行上面指令会在当前项目中生成 .gitmodules 文件,将submodule的路径和url保存下来。
注册/取消 submodule到当前版本管理
git submodule init
git submodule deinit <path>
运行上面的指令会把.gitmodules 中的信息注册到 .git/config 中,使当前项目保存 submodule信息,用于更新使用
更新 submodules
git submodule update
更新并克隆 submodules 到 .gitmodules 中指定的路径
修改 submodule
cd 到指定的 submodule 路径下,运行 git status 看到当前的 submodule提交 hashcode ,修改前先检出 master 分支,修改后提交。
返回项目目录 git status会看到修改了的 submodule 提示,commit 会绑定当前 submodule hashcode引用到当前分支
其他项目更新上述修改的 submodule
git submodule update --remote
从submodule 检出最新分支,或者进入 submodule 检出 master
git submodule foreach 'git checkout master && git pull'