git submodule使用

git submodule 用于关联其他独立的仓库。

它有着几点好处:

  • 代码复用:可以将工具代码放到单独的仓库,再通过 submodule 关联。
  • 模块化开发:可以将项目拆分成多个模块,每个模块设置单独仓库独立开发,再通过 submodule 组合在一块。
  • 版本控制:submodule 可以指定依赖的外部仓库的版本。确保项目使用的版本是稳定的。

git 关联子模块

  1. 添加子模块
git submodule add <仓库URL> <关联路径>
# git submodule add http://xxx.git packages/srm-front

执行成功后可以在父模块的.gitsubmodules 文件看到引入的子模块

  1. 在本地初始化子模块仓库,拉取子模块对应的分支代码
git submodule update --init --recursive --remote

git 修改子模块的URL

当关联的子模块地址改变后,在初始化子模块时会因为找不到对应的仓库而报错。这时需要修改子模块的地址。或者直接将子仓库 clone 到对应的目录下,但这样不方便团队协作

  1. 编辑.gitmodules文件
    修改目标子模块的 URL 为新的 URL。
[submodule "packages/srm-front"]
	path = packages/srm-front
	url = http://xxxx.git
  1. 同步新的 URL 到 git 配置

运行以下命令将.gitmodules的更改同步到本地仓库配置:

git submodule sync
  1. 清理子模块的现有配置和工作目录:
git submodule deinit --force my-submodule
  1. 重新初始化并更新子模块
    使用新的 URL 重新初始化和检出子模块:
git submodule update --init --remote my-submodule
  1. 提交更改到主仓库
    将修改后的.gitmodules文件提交到版本控制:
git add .gitmodules
git commit -m "[refactor] 更新关联子模块地址"
git push
  1. 验证更改:
    检查子模块远程 URL
    进入子模块目录,确认远程URL是否已更新:
cd packages/srm-front
git remote -v # 应显示新的HTTP地址

注意事项:

  • 如果子模块包含未提交的更改,deinit会提示错误,可先提交或丢弃这些更改。
  • 若主仓库有多个子模块,使用git submodule sync --recursive同步所有嵌套子模块。
  • 后续克隆主仓库时,使用git clone --recurse-submodules会自动使用新的HTTP URL
  • 以上步骤确保子模块的 URL 在本地和后续克隆中均使用HTTP协议。

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

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

相关文章

python怎么求 一个数是否包含3

python求一个数包含3的方法&#xff1a; 1、使用“for i in 列表名”循环遍历列表中的每一个元素并将每个元素用str()函数转换成字符串格式 2、用“if str(3) in i”判断该元素中是否含有3 完整代码如下&#xff1a; 执行结果如下&#xff1a;

数据库系统概念第六版记录 三

外码约束&#xff08;Foreign Key Constraint&#xff09; 外码&#xff08;Foreign Key, FK&#xff09;是关系数据库中的一个约束&#xff0c;它用于保证表之间的引用完整性。外码的值必须&#xff1a; 要么存在于被引用表的主键列中&#xff0c;要么为空&#xff08;NULL&…

修改SSH登录密码,只需要登录SSH,之后输入命令即可,这里登录使用的软件为 MobaXterm1

在登入终端之后输入命令 passwd {用户名} 即可进行修改。需要注意的是&#xff0c;输入的密码不会有星号代替&#xff0c;也不会出现明文。 如果想要修改SSH的登录端口&#xff0c;比如修改为1433&#xff0c;则只需要执行以下命令即可&#xff1a; /usr/sbin/sshd -p 1433…

电商平台的设计与实现(代码+数据库+LW)

摘 要 如今社会上各行各业&#xff0c;都喜欢用自己行业的专属软件工作&#xff0c;互联网发展到这个时候&#xff0c;人们已经发现离不开了互联网。新技术的产生&#xff0c;往往能解决一些老技术的弊端问题。因为传统商品交易信息管理难度大&#xff0c;容错率低&#xff0…

【R语言】plyr包和dplyr包

一、plyr包 plyr扩展包主要是实现数据处理中的“分割-应用-组合”&#xff08;split-apply-combine&#xff09;策略。此策略是指将一个问题分割成更容易操作的部分&#xff0c;再对每一部分进行独立的操作&#xff0c;最后将各部分的操作结果组合起来。 plyr扩展包中的主要函…

oscp备考,oscp系列——VulnOSv2靶场,两种方法获取低权限shell

前言 oscp备考&#xff0c;oscp系列——VulnOSv2靶场&#xff0c;两种方法获取低权限shell 难度简单 对于低权限shell获取涉及&#xff1a;drupal 7 getshell漏洞&#xff0c;opendocman sql注入&#xff0c;ssh连接对于提权&#xff1a;内核提权 下载地址&#xff1a; http…

东方财富股吧发帖与评论爬虫

东方财富股吧发帖与评论爬虫 东方财富股吧爬虫 写在开头项目介绍主要功能文件介绍爬取逻辑 a. 爬取帖子信息b. 爬取评论信息 使用步骤 1. 下载代码2. MongoDB 安装3. Webdriver 安装4. 运行 main.py5. 查看数据 踩过的坑附录&#xff08;运行结果&#xff09; 东方财富股吧爬…

wxWidgets生成HTML文件,带图片转base64数据

编译环境大家可以看我之前的文章,CodeBlocks + msys2 + wx3.2,win10 这里功能就是生成HTML文件,没用HTML库,因为是自己固定的格式,图片是一个vector,可以动态改变数量的。 效果如下: #include <wx/string.h> #include <wx/file.h> #include <wx/ima…

网络编程 day2

题目 代码 服务器 typedef char DataType[32]; //普通节点数据类型typedef struct NODE {union{DataType data; //普通节点数据域int len; //头节点数据域};struct NODE *next; //指针域 }node,*nodePtr;struct PACK {int size; //告知 通信传输的数据的大小int type; //决定…

【鸿蒙HarmonyOS Next实战开发】实现ArkTS/JS和C/C++的交互-Node-API

一、HarmonyOS Node-API简介 在HarmonyOS应用开发中&#xff0c;通常以ArkTS/JS语言为主&#xff0c;但在一些特殊场景下&#xff0c;例如游戏开发、物理模拟等&#xff0c;由于对性能、效率等有较高要求&#xff0c;需要借助现有的C/C库来实现。为了满足这种需求&#xff0c;…

Postgresql的三种备份方式_postgresql备份

这种方式可以在数据库正在使用的时候进行完整一致的备份&#xff0c;并不阻塞其它用户对数据库的访问。它会产生一个脚本文件&#xff0c;里面包含备份开始时&#xff0c;已创建的各种数据库对象的SQL语句和每个表中的数据。可以使用数据库提供的工具pg_dumpall和pg_dump来进行…

51单片机之使用Keil uVision5创建工程以及使用stc-isp进行程序烧录步骤

一、Keil uVision5创建工程步骤 1.点击项目&#xff0c;新建 2.新建目录 3.选择目标机器&#xff0c;直接搜索at89c52选择&#xff0c;然后点击OK 4.是否添加起吊文件&#xff0c;一般选择否 5.再新建的项目工程中添加文件 6.选择C文件 7.在C文件中右键&#xff0c;添加…

基础篇05-直方图操作

本节将简要介绍Halcon中有关图像直方图操作的算子&#xff0c;重点介绍直方图获取和显示两类算子&#xff0c;以及直方图均衡化处理算子。 目录 1. 引言 2. 获取并显示直方图 2.1 获取&#xff08;灰度&#xff09;直方图 (1) gray_histogram (2) gray_histo_abs (3) gr…

3.攻防世界 weak_auth

题目描述提示 是一个登录界面&#xff0c;需要密码登录 进入题目页面如下 弱口令密码爆破 用1 or 1 #试试 提示用admin登录 则尝试 用户名admin密码&#xff1a;123456 直接得到flag 常用弱口令密码&#xff08;可复制&#xff09; 用户名 admin admin-- admin or -- admin…

金蛇祈福,鸿运开年!广州白云皮具城2025开市大吉!

锣鼓一响&#xff0c;黄金万两&#xff01;2月6日大年初九&#xff0c;广州白云皮具城举行盛大的醒狮开市仪式&#xff01;象征吉祥如意的醒狮&#xff0c;将好运、财运传递给全体商户和八方来客。 醒狮点睛 金鼓一响黄金万两&#xff0c;十头醒狮登台&#xff0c;董事总经理刘…

【Axure教程】标签版分级多选下拉列表

分级多选下拉列表是指一个下拉列表&#xff0c;它包含多个层次的选项&#xff0c;用户可以选择一个或多个选项。这些选项通常是根据某种层级关系来组织的&#xff0c;例如从上到下有不同的分类或者过滤条件&#xff0c;用户选择上层选项后&#xff0c;下层选项会发生变化&#…

SpringBoot中的多环境配置管理

SpringBoot中的多环境配置管理 文章目录 SpringBoot中的多环境配置管理SpringBoot中的多环境配置管理 多环境配置的概述1. 为什么需要多环境配置&#xff1f;2. Spring Boot 中如何实现多环境配置&#xff1f;3. 多环境配置的应用场景4. 如何实现配置隔离&#xff1f; Spring B…

SOME/IP报文格式及发现协议详解

在之前的文章中&#xff0c;我们介绍了SOME/IP协议的几种服务接口。在本篇博客中&#xff0c;主要介绍some/ip协议传输的header报文格式以及SOME/IP-SD发现协议。 目录 流程 报文格式 Message ID Length Request ID protocal version/Interface Version Message Type…

使用Ollama本地部署deepseek

1、下载安装Ollama 前往下载页面 https://ollama.com/download下载好安装包&#xff0c;如同安装软件一样&#xff0c;直接安装即可 win中默认为C盘&#xff0c;如果需要修改到其他盘&#xff0c;查找具体教程 运行list命令&#xff0c;检查是否安装成功 2、修改模型下载的…

约束布局属性学习

1、layout_constraintHorizontal_bias layout_constraintHorizontal_bias 是 ConstraintLayout 中的一个重要属性&#xff0c;用于控制一个视图在父视图或相关视图中水平位置的偏移。这种偏移通过在0到1之间的浮点值来设置&#xff0c;0代表完全靠近左边或起始位置&#xff0c…