git submodule---同步最新的内容

2024-04-10 12:28

本文主要是介绍git submodule---同步最新的内容,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

0 Preface/Foreword

1 同步最新submodule内容到repo中

项目的repo包含了一个子模块,在开发过程中,经常需要同步子模块最新的commit到repo中。该如何操作呢?

本地在克隆时候,已经同步把子模块中的内容克隆下来了,但是,过了一段时间,子模块在主分支有了新的提交,此时项目repo中记录的还是之前子模块的提交记录。 以下方法用于把子模块最新的提交更新到项目repo中。

步骤如下

第一步:在项目repo中,进入到子模块文件夹下,通过git pull进行拉取

克隆代码的时候,在本地会拉取子模块所有的内容,然后在切换到对应的点(当前项目repo绑定的点)。(为了演示整个过程,重新拉取了项目repo

拉取前:

拉取后:

 因为重新拉取了项目repo,所以本地子模块中已经包含了远程子模块中所有内容,但是远程项目repo记录的子模块点是之前的点,所有子模块目前自动切换到了之前的点。

提示当前没有在一个分支上,需要切换到一个指定的分支。

第二步:返回项目repo根目录,git status查看状态

发现子模块(文件夹)有新的提交。

当前远程仓库中记录的子模块最新的提交如下

第三步:git add 子模块更改

第四步:git commit提交到本地仓库 

第五步:git push 到远程仓库

2 回退子模块修改 

2.1 项目repo路径下update子模块

  git submodule update --remote

 

2.2 回退子模块 

 git submodule update --init --recursive

 

3 查看子模块修改 

3.1 在项目repo路径下查看

git diff 

 

3.2 查看子模块具体修改

git diff --submodule 

 

 3.3 设置submodule显示的总结个数

 git config status.submoduleSummary 1

 

这篇关于git submodule---同步最新的内容的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/891055

相关文章

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Java日期类详解(最新推荐)

《Java日期类详解(最新推荐)》早期版本主要使用java.util.Date、java.util.Calendar等类,Java8及以后引入了新的日期和时间API(JSR310),包含在ja... 目录旧的日期时间API新的日期时间 API(Java 8+)获取时间戳时间计算与其他日期时间类型的转换Dur

MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)

《MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)》掌握多表联查(INNERJOIN,LEFTJOIN,RIGHTJOIN,FULLJOIN)和子查询(标量、列、行、表子查询、相关/非相关、... 目录第一部分:多表联查 (JOIN Operations)1. 连接的类型 (JOIN Types)

Linux实现线程同步的多种方式汇总

《Linux实现线程同步的多种方式汇总》本文详细介绍了Linux下线程同步的多种方法,包括互斥锁、自旋锁、信号量以及它们的使用示例,通过这些同步机制,可以解决线程安全问题,防止资源竞争导致的错误,示例... 目录什么是线程同步?一、互斥锁(单人洗手间规则)适用场景:特点:二、条件变量(咖啡厅取餐系统)工作流

Mysql的主从同步/复制的原理分析

《Mysql的主从同步/复制的原理分析》:本文主要介绍Mysql的主从同步/复制的原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录为什么要主从同步?mysql主从同步架构有哪些?Mysql主从复制的原理/整体流程级联复制架构为什么好?Mysql主从复制注意

Python实现自动化Word文档样式复制与内容生成

《Python实现自动化Word文档样式复制与内容生成》在办公自动化领域,高效处理Word文档的样式和内容复制是一个常见需求,本文将展示如何利用Python的python-docx库实现... 目录一、为什么需要自动化 Word 文档处理二、核心功能实现:样式与表格的深度复制1. 表格复制(含样式与内容)2

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢