首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

git submodule 管理子项目

常用命令 git clone --recursive # 递归方式克隆整个项目 git submodule add path # 添加子模块 git...git submodule add path 即可添加 克隆子模块 git clone --recursive 直接递归克隆,如果是克隆父项目,可以在克隆完成之后...更新子模块 如果子模块和新的修改,但是父项目没有更新到最新,则可以使用 git submodule foreach git pull 将所有的子项目中更新,如果子项目比 .gitmodules 新,则需要更新一下...删除子模块 首先需要 git rm --cached ,然后依次删除对应的目录、.gitmodules 文件中的记录、 .git/cofig 中的记录。...修改子模块配置信息 与删除相同,需要同时修改 .gitmodules 和 .git/config 两个文件中的 URL 值,然后执行 git submodule sync 来同步,然后再提交到远程即可。

74320

浅析 Git 子模块

2.1 - 添加子模块 在当前项目中,添加已有的第三方库: git submodule add 3RD_LIB_GIT_PATH 默认情况下,子模块会自动放入一个与其仓库同名的子目录中;在末尾也可以加一个自定义的路径参数...同时项目中会出现一个新的 .gitmodules 配置文件,保存了一些映射关系: [submodule "3RD_LIB_NAME"] path = 3RD_LIB_NAME url = 3RD_LIB_GIT_PATH...不过,当两边同时修改,也就是子模块提交已经分叉的情况下,如果尝试合并,Git 会报 “merge following commits not found” 错误。.....0000000 --- a/3RD_LIB_GIT_PATH +++ b/3RD_LIB_GIT_PATH # 进入子模块目录 $ cd 3RD_LIB_GIT_PATH # 基于 git diff...Tom's Changes" 2.7 - 删除子模块 从 .gitmodules 文件中删除相关的行 从 .git/config 中删除相关部分 运行 git rm –cached 删除

1.3K10

Git Submodule项目子模块管理

> :添加子模块 git submodule init :初始化子模块 git submodule update :更新子模块 git submodule foreach git pull...使用命令git status可以看到多了两个需要提交的文件,其中.gitmodules指定submodule的主要信息,包括子模块的路径和地址信息,moduleA指定了子模块的commit id,使用git...需要注意的是,父项目的git并不会记录submodule的文件变动,它是按照commit id指定submodule的git header,所以.gitmodules和moduleA这两项是需要提交到父项目的远程仓库的...Changes to be committed: (use "git reset HEAD ..." to unstage) new file: .gitmodules...网上有好多使用的是下面的这种方法: git rm --cached moduleA rm -rf moduleA rm .gitmodules vim .git/config 然后提交到远程服务器: git

72320
领券