【Git】一文教你学会 submodule 的增、删、改、查

添加子模块

$ git submodule add <url> <path>
  • url 为想要添加的子模块路径
  • path 为子模块存放的本地路径

示例,添加 r-tinymaix 为子模块到主仓库 ./sdk/packages/online-packages/r-tinymaix 路径下,命令如下所示:

$ git submodule add https://github.com/RiceChen0/r-tinymaix.git ./sdk/packages/online-packages/r-tinymaix

在这里插入图片描述

等命令执行完毕后,在本地路径就可以看到子模块内容了:

在这里插入图片描述

此时报了一个警告:

warning: in the working copy of '.gitmodules', LF will be replaced by CRLF the next time Git touches it

这是因为在文本处理中,Windows平台中使用 CR/LF(回车/换行)作为换行符,Linux平台中仅使用 LF(换行)作为换行符,这个问题可以通过以下方式解决:

$ git config --global core.autocrlf true

查看子模块

$ git submodule

可以看到子模块信息:

c5029b773b0511d32cca78275b7c8f1fb5eb34a8 sdk/packages/online-packages/r-tinymaix (heads/main)

在这里插入图片描述

更新子模块

$ git submodule update

提交子模块

查看仓库状态:

$ git status

可以看到有新文件添加进来:

在这里插入图片描述

这里我自己添加了一个 Sconscript 文件,将它也添加进来,执行命令:

$ git add .

在这里插入图片描述

提交到仓库、推送到远端:

$ git commit -m "add r-tinymaix" 
$ git push origin HEAD:master

在这里插入图片描述

博主仓库没有远端,就不 push 了~

删除子模块

简单粗暴式
  • 删除子模块目录及源码:

在这里插入图片描述

  • 删除 .gitmodules 文件中子模块相关条目:

在这里插入图片描述

  • 删除 .git/config 配置项中子模块相关条目:

在这里插入图片描述

  • 删除 .git/module/ 目录下子模块相关内容:

在这里插入图片描述

官方优雅式

根据官方文档,可使用卸载子模块命令:

$ git submodule deinit <sub-module>

如果添加上参数 --force,则子模块工作区内即使有本地的修改,也会被移除。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/184202.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

java 手机商城免费搭建+电商源码+小程序+三级分销+SAAS云平台

【SAAS云平台】打造全行业全渠道全场景的SaaS产品&#xff0c;为店铺经营场景提供一体化解决方案&#xff1b;门店经营区域化、网店经营一体化&#xff0c;本地化、全方位、一站式服务&#xff0c;为多门店提供统一运营解决方案&#xff1b;提供丰富多样的营销玩法覆盖所有经营…

【数据结构/C++】栈和队列_链队列

#include <iostream> using namespace std; // 链队列 typedef int ElemType; typedef struct LinkNode {ElemType data;struct LinkNode *next; } LinkNode; typedef struct {LinkNode *front, *rear; } LinkQueue; // 初始化 void InitQueue(LinkQueue &Q) {Q.fron…

2024免费MacBook清理工具CleanMyMac X4.15

CleanMyMac X 是一款专业的Mac清理软件&#xff0c;可智能清理mac磁盘垃圾和多余语言安装包&#xff0c;快速释放电脑内存&#xff0c;轻松管理和升级 Mac 上的应用。同时 CleanMyMac X 可以强力卸载恶意软件&#xff0c;修复系统漏洞&#xff0c;一键扫描和优化 Mac 系统&…

医院手术麻醉信息系统全套源码,自主版权,支持二次开发

医院手术麻醉信息系统全套商业源码&#xff0c;自主版权&#xff0c;支持二次开发 手术麻醉信息系统是HIS产品的中的一个组成部分&#xff0c;主要应用于医院的麻醉科&#xff0c;属于电子病历类产品。医院麻醉监护的功能覆盖整个手术与麻醉的全过程&#xff0c;包括手术申请与…

Talk | 牛津大学博士后研究员边佳旺:SC-DepthV3-动态场景中的自监督单目深度估计

本期为TechBeat人工智能社区第550期线上Talk。 北京时间11月23日(周四)20:00&#xff0c;牛津大学博士后研究员—边佳旺的Talk已准时在TechBeat人工智能社区开播&#xff01; 他与大家分享的主题是: “SC-DepthV3&#xff1a;动态场景中的自监督单目深度估计”&#xff0c;介绍…

ros2文件package.xml与cmakelists.txt比较

每次在ros2里面添加文件以后&#xff0c;都要修改packages.xml,与cmakelists.txt文件。

ssm+vue的企业文档管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频&#xff1a; ssmvue的企业文档管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;ssm vue前后端分离项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&…

RabbitMQ 消息队列编程

安装与配置 安装 RabbitMQ 读者可以在 RabbitMQ 官方文档中找到完整的安装教程&#xff1a;Downloading and Installing RabbitMQ — RabbitMQ 本文使用 Docker 的方式部署。 RabbitMQ 社区镜像列表&#xff1a;https://hub.docker.com/_/rabbitmq 创建目录用于映射存储卷…

仿activiti实现一个简版工作流

简版工作流 前言功能实现1.需求及实现2.代码实现1.流程设置2.项目权限设置1.表设计 3.任务流程处理1.表设计2.代码实现 4.任务流程记录5.接口说明 前言 本文代码实现是仿照工作流实现的&#xff0c;由于业务需求的特殊性&#xff0c;没有直接使用工作流。 功能实现 功能实现…

3款免费次数多且功能又强大的国产AI绘画工具

hi&#xff0c;同学们&#xff0c;本期是我们第55 期 AI工具教程 最近两个月&#xff0c;国内很多AI绘画软件被关停&#xff0c;国外绝大部分AI绘画工具费用不低&#xff0c;因此 这两天我 重新整理 国产 AI绘画 工具 &#xff0c; 最终 筛选了 3款功能强大&#xf…

GoLand 2023.2.5(GO语言集成开发工具环境)

GoLand是一款专门为Go语言开发者打造的集成开发环境&#xff08;IDE&#xff09;。它能够提供一系列功能&#xff0c;如代码自动完成、语法高亮、代码格式化、代码重构、代码调试等等&#xff0c;使编写代码更加高效和舒适。 GoLand的特点包括&#xff1a; 1. 智能代码补全&a…

Java常量池理论篇:Class常量池、运行时常量池、String常量池、基本类型常量池,intern方法1.6、1.7的区别

文章目录 Class常量池运行时常量池String常量池基本类型常量池Integer 常量池Long 常量池 加餐部分 Class常量池 每个Class字节码文件中包含类常量池用来存放字面量以及符号引用等信息。 运行时常量池 java文件被编译成class文件之后&#xff0c;也就是会生成我上面所说的 …

WordPress用sql命令批量删除所有文章

有时我们需要将一个网站搬迁到另一个服务器。我们只想保留网站的模板样式&#xff0c;而不需要文章内容。一般情况下我们可以在后台删除已发表的文章&#xff0c;但如果有很多文章&#xff0c;我们则需要一次删除所有文章。 WordPress如何批量删除所有文章 进入网站空间后台&a…

webshell之基于框架免杀

thinkphp array_map_recursive函数 array_map_recursive函数分析 这里存在一个call_user_func命令执行函数 免杀效果 B函数 免杀效果 B函数分析 exec函数分析 在exec函数用存在有个类调用&#xff0c;且所有的参数都可控 smarty_php_tag函数 免杀效果 smarty_php_tag函数分析…

2023年项目管理工具排行榜:最佳项目管理工具推荐

如果你正在寻找一款项目管理软件&#xff0c;以下是你的最佳选择。让项目量化、可视化&#xff0c;资源合理分配、跟踪项目进度&#xff0c;帮助你的团队协作完成项目。 1、进度猫 进度猫是一款以甘特图为向导的轻量级在线免费项目进度管理工具。 基于甘特图、进度管理、任…

“AI就绪”新计划,亚马逊云科技到2025年向200万人提供免费AI技能培训

AI就绪&#xff08;AI Ready&#xff09;计划 到2025年为全球200万人提供 免费人工智能&#xff08;AI&#xff09;技能培训和教育资源 亚马逊云科技宣布启动“AI就绪&#xff08;AI Ready&#xff09;”计划&#xff0c;旨在到2025年为全球200万人提供免费人工智能&#xff08…

NPU、CPU、GPU算力及算力计算方式

NVIDIA在9月20日发布的NVIDIA DRIVE Thor 新一代集中式车载计算平台&#xff0c;可在单个安全、可靠的系统上运行高级驾驶员辅助应用和车载信息娱乐应用。提供 2000 万亿次浮点运算性能&#xff08;2000 万亿次8位浮点运算&#xff09;。NVIDIA当代产品是Orin&#xff0c;算力是…

最全的电商API接口|全面淘宝平台数据接口参数和文档说明

淘宝联盟“工具服务商”开放招募 为了支持生态淘宝客业务提效及新业务模式拓展&#xff0c;淘宝联盟针对各工具业务模式招募若干工具服务商团队&#xff0c;仅限符合该招募规则的开发者申请创建工具服务商AppKey&#xff0c;并针对新引入的工具服务商将开放对应模式所需要的“服…

SQL Server Profiler基础使用

文章目录 SQL Server Profiler基础使用简介如何打开直接打开Microsoft SQL Server Management Studio工具栏打开 配置跟踪新建跟踪跟踪属性配置常规配置事件选择 启动跟踪跟踪时执行脚本跟踪记录 暂停跟踪停止跟踪 SQL Server Profiler基础使用 简介 一个图形界面工具&#x…

亚马逊云科技向量数据库助力生成式AI成功落地实践探秘(二)

向量数据库选择哪种近似搜索算法&#xff0c;选择合适的集群规模以及集群设置调优对于知识库的读写性能也十分关键&#xff0c;主要需要考虑以下几个方面&#xff1a; 向量数据库算法选择 在 OpenSearch 里&#xff0c;提供了两种 k-NN 的算法&#xff1a;HNSW (Hierarchical…
最新文章