git 删除 submodule 子模块的步骤

实验有效,这里删除了两个 submodule。

1, 执行删除 submodule

bash 复制代码
mkdir tmp1 && cd tmp1 &&  git clone --recursive ssh://git@aaa.bbb.ccc.git \
&& cd ccc/ &&  git checkout -b abranch_01 \
&& git submodule deinit -f XXXX \
&& git submodule deinit -f YYYY \
&& git rm --cache XXXX \
&& git rm --cache YYYY \
&& rm -rf XXXX \
&& rm -rf YYYY \
&& rm -rf .git/modules/XXXX \
&& rm -rf .git/modules/YYYY \

#rm .gitmodules 
vim .gitmodules
//删除.gitmodules 中与本module 相关的信息

vim .git/config


git add .
git status
git commit -m "del submodules XXXX and YYYY"
git log -1
git push origin abranch_01

2. 验证是否成功删除

验证方法,当重新git clone 项目(先不加 --recursive 选项)后,

bash 复制代码
git checkout abranch_01

git submodule init

git submodule update

之后,

ls .git/module 文件夹已经不存在

XXXX/ 与 YYYY/ 文件夹也不存在

这是就可以merge 进 master 中了。

其中,如果项目只有一个submodule,那么,删除 submodule 后,.gitmodules 中的内容变为空,可以直接删除 .gitmodules 整个文件: rm .gitmodules

相关推荐
摇滚侠5 小时前
VScode 提交代码 Git
git
YuforiaCode7 小时前
移除原有 Git 仓库关联,在IDEA中重新初始化 Git 并推送到新仓库(详细图解、包含相关问题的解决办法)
git
UIUV7 小时前
Git程序员入门笔记:从零开始掌握分布式版本控制
git
星光不问赶路人7 小时前
彻底清理 Git 分支:从查看到批量删除无效分支的全流程指南
git·github
如果是君12 小时前
【git使用】ubuntu下利用git工具提交一个工程
linux·git·ubuntu
吃鱼吃鱼吃不动了13 小时前
常用的 git 命令
git
迷路爸爸18013 小时前
Git Commit Message 规范:写出清晰、可维护的提交记录
git·python
前端赵哈哈13 小时前
Git 本地仓库操作指南:将未提交文件复刻至新分支(无需关联远端)
前端·git·github
神秘的猪头14 小时前
git应用初体验
git
麻辣璐璐21 小时前
【新手小白版】Gerrit使用教程
git·gerrit·新手