DORIS - 执行 git submodule update --init --recursive 的目的是什么?

前言

bash 复制代码
以前,我们学习源码的时候只需要执行克隆命令即可,如下:
git clone https://github.com/rocky/doris.git
当我学习DORIS的时候,发现执行完上面的命令后,还需要执行如下命令:
git submodule update --init --recursive
所以,进行记录...

场景

某个项目/模块可能会依赖于其他模块或第三方库,项目本身的代码是一个独立的完整的代码仓库,并且不应该把依赖的模块或第三方库的代码直接放到该项目代码库中,但是本地编译的时候又会用到这些依赖的第三方库。

当我们在本地编译的时候,希望在本地能够实现自动的将依赖的模块或第三方库,拉取到该项目指定目录中。

所以,我们可以使用:git submodule 指令。

简介(以下内容来自互联网)

bash 复制代码
git submodule update --init --recursive
这是一个用于初始化并更新 Git 子模块的命令,其中包含了三个参数:

1. update:

告诉 Git 更新子模块。如果不指定此参数,Git 将不会更新子模块,而只是确保它们处于正确的提交状态。

2. --init:

告诉 Git 初始化尚未初始化的子模块。
如果你的仓库包含子模块,并且有些子模块尚未被初始化(通常是因为它们是在一个最新的版本中添加的),
那么使用这个参数将初始化这些子模块。

3. --recursive:

告诉 Git 递归地初始化和更新所有的子模块。如果子模块本身包含了其他子模块,那么使用这个参数将确保所有子模块都被正确初始化和更新。
因此,git submodule update --init --recursive命令的作用是确保所有子模块都被正确地初始化和更新到仓库中的最新状态。
相关推荐
习惯就好zz1 天前
Git 交互式 rebase 实战:将后续修改合并到历史提交
git
南棱笑笑生1 天前
20260429给万象奥科的开发板HD-RK3576-PI适配瑞芯微原厂的Android14时删除全部的.git目录
git·rockchip
tsyjjOvO1 天前
【Git 从入门到实战】(IDEA+Gitee 版)
git·gitee·idea
你知道“铁甲小宝”吗丶2 天前
git推送到多平台(gitee/github)
git·gitee·github
bksczm2 天前
Linux之基础开发工具之git
git
GUET_一路向前2 天前
【git工作常用指令】
大数据·git·elasticsearch
handler012 天前
Git 核心指令速查
linux·c语言·c++·笔记·git·学习
二宝哥2 天前
大数据之yum安装git
git
牛奶咖啡132 天前
Git实践——git远程仓库操作
git·git远程仓库的创建·github创建仓库·git将本地仓库推送到远程仓库·使用git克隆远程仓库到本地·git分支的创建与合并·git冲突的产生与解决
随风,奔跑2 天前
Git学习笔记
笔记·git·学习