Loading

如何优雅的删除子模块(submodule)或修改Submodule URL

1. 优雅的删除子模块

# 逆初始化模块,其中{MOD_NAME}为模块目录,执行后可发现模块目录被清空
git submodule deinit {MOD_NAME} 
# 删除.gitmodules中记录的模块信息(--cached选项清除.git/modules中的缓存)
git rm --cached {MOD_NAME} 
# 提交更改到代码库,可观察到'.gitmodules'内容发生变更
git commit -am "Remove a submodule." 

2. 修改某模块URL

  1. 修改'.gitmodules'文件中对应模块的”url“属性;
  2. 使用git submodule sync命令,将新的URL更新到文件.git/config
thinker-g@localhost: ~/app$ git submodule sync 
Synchronizing submodule url for 'gitmods/thinker_g/Helpers'
thinker-g@localhost: ~/app$ # 运行后可观察到'.git/config'中对应模块的url属性被更新
thinker-g@localhost: ~/app$ git commit -am "Update submodule url." # 提交变更
posted @ 2020-10-03 17:08  王树燚  阅读(1418)  评论(0编辑  收藏  举报