git 删除 submodule 子模块的步骤

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

1, 执行删除 submodule

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 选项)后,
 

git checkout abranch_01

git submodule init

git submodule update

之后,

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

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

这是就可以merge 进 master 中了。

 

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

相关推荐

  1. [linux] git clone一个repo,包括它模块submodule

    2024-01-18 21:58:04       61 阅读
  2. git 模块

    2024-01-18 21:58:04       26 阅读
  3. git模块

    2024-01-18 21:58:04       23 阅读
  4. 浅析Git模块

    2024-01-18 21:58:04       28 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-18 21:58:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-18 21:58:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-18 21:58:04       82 阅读
  4. Python语言-面向对象

    2024-01-18 21:58:04       91 阅读

热门阅读

  1. 使用elasticsearchdump迁移elasticsearch数据实战

    2024-01-18 21:58:04       49 阅读
  2. 微服务概述之微服务实践参考

    2024-01-18 21:58:04       58 阅读
  3. flink 1.18 sql demo

    2024-01-18 21:58:04       32 阅读
  4. Redis的key过期策略是怎么实现的

    2024-01-18 21:58:04       49 阅读
  5. python 读写kafka

    2024-01-18 21:58:04       49 阅读
  6. python 常用功能积累

    2024-01-18 21:58:04       45 阅读
  7. 机器学习之协同过滤算法

    2024-01-18 21:58:04       73 阅读
  8. 机器学习在表面缺陷检测中的技术与实践

    2024-01-18 21:58:04       63 阅读