Skip to main content

wKevin

目的地

双月湾位于:惠州市--惠东县--港口镇

惠州市

惠州,面积 11200km2,是深圳(2000km2)的 5.6 倍,东莞(2500km2)的 4.5 倍。

惠州,我觉得像一只前踢跃起的兔子:

wKevin

git help submodule 文档中找不到如何 mv 一个已有的 submodule,stackoverflow 上可以搜到很多这个问题的解决办法,大多和本文的内容一样,晦涩而繁杂,没办法,好像没有完美而简洁的办法。 本文只是分析 stackoverflow 上的解决办法,进行一些梳理和总结。

要素

重命名一个 submodule,要涉及以下几个方面:

  1. .gitmodules 1.1. .submodules 1.2. path
  2. .git/config //基本不需要修改
  3. .git/modules/ 3.1. oldPath/xxx/config -- worktree 3.2. oldPath/submodule --> newPath/submodule
  4. submodule/ 4.1. 创建 newPath/submodule 4.2. mv oldPaht/submodule/. --> newPath/submodule/ 4.3. newPath/submodule/.git -- gitdir 4.4. 删除 oldPath/submodule

wKevin

ST3 比 ST2 加强了 project 的功能,如“F12 - 跳转到定义”,使得 ST 更像个 IDE 了。

wKevin

常规操作

发布者:维护父项目与 submodule 之间的依赖关系

$ git submodule add https://......
$ git commit

使用者:使用父项目,透明处理或更新 submodule,但不修改依赖关系

$ git clone https://github.com/wkevin/iOS.grocery.git
$ cd iOS.grocery
$ git submodule init
$ git submodule update