Git submodule 如何删除一个 submodule

本文详细介绍了如何解决在Git中无法删除指定submodule的问题。通过调整.gitmodules文件配置及使用`git rm --cached`命令,可以成功移除不再需要的submodule。此方法适用于那些在尝试删除submodule时遇到困难的开发者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个问题困扰了我很久,经常在下载一些项目使用 Git Submodule 功能的时候遇到 某个 sub module 源不存在的问题,本来是可以在 Github 上面找到类似的源,但却没法删掉当前这个有问题的 Submodule。

用 git submodule –help 看帮助里面也没有类似的说明…

也曾试过强行修改 .gitmodule 和 .git/config 两个文件,并找遍了 .git/ 目录里面的文件并确认没有那个 module 的信息,但还是不行,提示说 那个 module 还在…

今天终于在 StackOverflow 上面找到了原因… 原来是需要删除缓存才可以

例如一个 Rails 插件的submodule 目录是 vendor/plugins/will_paginate

  1. 从 .gitmodule 文件里面删掉关于 vendor/plugins/will_paginate 的配置信息
  2. git rm –cached vendor/plugins/will_paginate 
  3. 现在可以重新添加了
注意,目录后面不要带 / 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值