美文网首页
关联subModule和移除subModule详解(结合sour

关联subModule和移除subModule详解(结合sour

作者: 文艺女青年的男人 | 来源:发表于2019-01-24 16:02 被阅读0次


    subModule其实就是sourceTree中的tree,为什么要引入tree那?当项目中有一部分模块想要做成单独的一个组件形式,但是这个组件可能经常改动代码,这个时候做成我们的公有库或者私有库就不太好维护了,所以这个时候tree这种模式就出现了,我们可以把这部分代码放到私有库的形式放到单独的git仓库中,又可以在我们项目中动态的维护这部分的代码,这就是tree这种结构的好处.

    (一)在当前工程添加submodule,命令如下:

    git submodule add 私有库地址 路径

    私有库地址是指子模块仓库地址,路径指将子模块放置在当前工程下的路径。 注意:路径不能以 / 结尾(会造成修改不生效)、不能是现有工程已有的目录(不能順利 Clone)

    如果在sourcetree中,会在子模块目录下发现添加进来的subModule模块

    (二)subModule移除

    1.现将sourcetree里的对应的subModule子树删除

    删除子树中对应的subModule

    2.删除项目根目录下.gitmodules 里的地址

    [submodule "rice-ios/ios-libs-web"] 以及对应的url地址和path

    3.删除.git/config里对应的subModule信息

    config信息

    4.删除缓存

    git add .gitmodules

    git submodule update

    {}内部是对应模块相对cd到目录的相对路径

    删除缓存

    最后一步:rm -rf .git/modules/rice-ios/{MOD_NAME}  删除.git/modules里的文件

    其中模块目录就是子模块相对于项目根目录的相对路径

    大功告成

    添加subModule

    只需要执行命令

    git submodule add git私有库地址  (这种情况下是存放路径存在的情况下)

    git submodule add git私有库地址 存放的相对路径 (这种情况是没有响应的目标文件夹下可以在相对路径中自动创建)

    欢迎关注我的公众号,专注iOS开发、大前端开发、跨平台技术分享。

    iOS开发之家

    相关文章

      网友评论

          本文标题:关联subModule和移除subModule详解(结合sour

          本文链接:https://www.haomeiwen.com/subject/fexujqtx.html